@qooxdoo/framework 7.0.0-beta.1 → 7.0.0-beta.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1599) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/Manifest.json +2 -2
  3. package/README.md +9 -3
  4. package/bin/deploy/qx +0 -0
  5. package/lib/compiler/compile-info.json +45 -44
  6. package/lib/compiler/index.js +6600 -11001
  7. package/lib/resource/qx/tool/cli/templates/loader/loader-node.tmpl.js +3 -1
  8. package/lib/resource/qx/tool/cli/templates/skeleton/mobile/source/theme/custom/css/custom.css +1 -1
  9. package/lib/resource/qx/tool/cli/templates/skeleton/mobile/source/theme/custom/css/custom.css.map +1 -1
  10. package/lib/resource/qx/tool/cli/templates/template_vars.js +1 -1
  11. package/lib/resource/qx/tool/loadsass.js +16 -21
  12. package/lib/resource/qx/tool/schema/Manifest-1-0-0.json +1 -2
  13. package/lib/resource/qx/tool/schema/Manifest-2-0-0.json +1 -2
  14. package/lib/resource/qx/tool/schema/compile-1-0-0.json +16 -20
  15. package/lib/resource/qx/tool/website/build/assets/bluebird.min.js +4593 -9
  16. package/lib/resource/qx/tool/website/build/assets/buttons.js +391 -1
  17. package/lib/resource/qx/tool/website/build/assets/fontawesome-all.js +8963 -1
  18. package/lib/resource/qx/tool/website/build/assets/jquery.js +5452 -3
  19. package/lib/resource/qx/tool/website/build/diagnostics/dependson.js +31 -31
  20. package/lib/resource/qx/tool/website/build/diagnostics/requiredby.js +32 -36
  21. package/lib/resource/qx/tool/website/build/scripts/serve.js +87 -66
  22. package/lib/resource/qx/tool/website/src/assets/bluebird.min.js +4593 -9
  23. package/lib/resource/qx/tool/website/src/assets/buttons.js +391 -1
  24. package/lib/resource/qx/tool/website/src/assets/fontawesome-all.js +8963 -1
  25. package/lib/resource/qx/tool/website/src/assets/jquery.js +5452 -3
  26. package/lib/resource/qx/tool/website/src/diagnostics/dependson.js +31 -31
  27. package/lib/resource/qx/tool/website/src/diagnostics/requiredby.js +32 -36
  28. package/lib/resource/qx/tool/website/src/scripts/serve.js +87 -66
  29. package/npm-shrinkwrap.json +7293 -0
  30. package/package.json +29 -14
  31. package/source/class/q.js +4 -2
  32. package/source/class/qx/Annotation.js +48 -57
  33. package/source/class/qx/Bootstrap.js +206 -207
  34. package/source/class/qx/Class.js +602 -504
  35. package/source/class/qx/Interface.js +169 -137
  36. package/source/class/qx/Mixin.js +162 -120
  37. package/source/class/qx/Part.js +48 -77
  38. package/source/class/qx/Promise.js +5891 -4655
  39. package/source/class/qx/Theme.js +200 -134
  40. package/source/class/qx/__init__.js +8 -8
  41. package/source/class/qx/application/AbstractGui.js +20 -32
  42. package/source/class/qx/application/Basic.js +9 -18
  43. package/source/class/qx/application/IApplication.js +6 -10
  44. package/source/class/qx/application/Inline.js +4 -7
  45. package/source/class/qx/application/Mobile.js +22 -45
  46. package/source/class/qx/application/Native.js +8 -19
  47. package/source/class/qx/application/Routing.js +88 -114
  48. package/source/class/qx/application/Standalone.js +4 -9
  49. package/source/class/qx/application/__init__.js +1 -1
  50. package/source/class/qx/bom/AnimationFrame.js +26 -25
  51. package/source/class/qx/bom/Blocker.js +92 -100
  52. package/source/class/qx/bom/Cookie.js +18 -22
  53. package/source/class/qx/bom/Document.js +24 -31
  54. package/source/class/qx/bom/Element.js +65 -51
  55. package/source/class/qx/bom/Event.js +68 -78
  56. package/source/class/qx/bom/FileReader.js +110 -115
  57. package/source/class/qx/bom/Font.js +82 -122
  58. package/source/class/qx/bom/FullScreen.js +32 -41
  59. package/source/class/qx/bom/GeoLocation.js +39 -44
  60. package/source/class/qx/bom/HashHistory.js +58 -64
  61. package/source/class/qx/bom/History.js +61 -89
  62. package/source/class/qx/bom/Html.js +75 -71
  63. package/source/class/qx/bom/IdleCallback.js +20 -23
  64. package/source/class/qx/bom/Iframe.js +37 -69
  65. package/source/class/qx/bom/IframeHistory.js +83 -88
  66. package/source/class/qx/bom/Input.js +50 -66
  67. package/source/class/qx/bom/Label.js +65 -86
  68. package/source/class/qx/bom/Lifecycle.js +7 -9
  69. package/source/class/qx/bom/MediaQuery.js +324 -307
  70. package/source/class/qx/bom/NativeHistory.js +51 -46
  71. package/source/class/qx/bom/Notification.js +41 -47
  72. package/source/class/qx/bom/PageVisibility.js +19 -25
  73. package/source/class/qx/bom/Range.js +20 -30
  74. package/source/class/qx/bom/Selection.js +163 -172
  75. package/source/class/qx/bom/Selector.js +2401 -2181
  76. package/source/class/qx/bom/Shortcut.js +103 -129
  77. package/source/class/qx/bom/Storage.js +9 -8
  78. package/source/class/qx/bom/String.js +285 -290
  79. package/source/class/qx/bom/Style.js +30 -31
  80. package/source/class/qx/bom/Stylesheet.js +36 -60
  81. package/source/class/qx/bom/Template.js +730 -657
  82. package/source/class/qx/bom/Viewport.js +40 -46
  83. package/source/class/qx/bom/Vml.js +43 -28
  84. package/source/class/qx/bom/WebWorker.js +61 -50
  85. package/source/class/qx/bom/Window.js +88 -105
  86. package/source/class/qx/bom/__init__.js +11 -11
  87. package/source/class/qx/bom/client/Browser.js +45 -47
  88. package/source/class/qx/bom/client/Css.js +85 -85
  89. package/source/class/qx/bom/client/CssAnimation.js +41 -49
  90. package/source/class/qx/bom/client/CssTransform.js +21 -29
  91. package/source/class/qx/bom/client/CssTransition.js +9 -12
  92. package/source/class/qx/bom/client/Device.js +45 -45
  93. package/source/class/qx/bom/client/EcmaScript.js +153 -96
  94. package/source/class/qx/bom/client/Engine.js +38 -35
  95. package/source/class/qx/bom/client/Event.js +75 -63
  96. package/source/class/qx/bom/client/Html.js +97 -97
  97. package/source/class/qx/bom/client/Idle.js +4 -6
  98. package/source/class/qx/bom/client/Locale.js +15 -15
  99. package/source/class/qx/bom/client/OperatingSystem.js +89 -106
  100. package/source/class/qx/bom/client/Pdfjs.js +1364 -1067
  101. package/source/class/qx/bom/client/PhoneGap.js +6 -9
  102. package/source/class/qx/bom/client/Plugin.js +93 -97
  103. package/source/class/qx/bom/client/Runtime.js +14 -12
  104. package/source/class/qx/bom/client/Scroll.js +20 -16
  105. package/source/class/qx/bom/client/Stylesheet.js +44 -32
  106. package/source/class/qx/bom/client/Transport.js +38 -41
  107. package/source/class/qx/bom/client/Xml.js +39 -41
  108. package/source/class/qx/bom/client/__init__.js +4 -4
  109. package/source/class/qx/bom/element/Animation.js +15 -12
  110. package/source/class/qx/bom/element/AnimationCss.js +95 -64
  111. package/source/class/qx/bom/element/AnimationHandle.js +22 -29
  112. package/source/class/qx/bom/element/AnimationJs.js +94 -71
  113. package/source/class/qx/bom/element/Attribute.js +119 -134
  114. package/source/class/qx/bom/element/Background.js +35 -35
  115. package/source/class/qx/bom/element/BoxSizing.js +43 -44
  116. package/source/class/qx/bom/element/Class.js +50 -72
  117. package/source/class/qx/bom/element/Clip.js +36 -60
  118. package/source/class/qx/bom/element/Cursor.js +13 -20
  119. package/source/class/qx/bom/element/Dataset.js +33 -31
  120. package/source/class/qx/bom/element/Decoration.js +178 -168
  121. package/source/class/qx/bom/element/Dimension.js +78 -60
  122. package/source/class/qx/bom/element/Location.js +87 -94
  123. package/source/class/qx/bom/element/Opacity.js +42 -44
  124. package/source/class/qx/bom/element/Scroll.js +78 -88
  125. package/source/class/qx/bom/element/Style.js +61 -101
  126. package/source/class/qx/bom/element/Transform.js +38 -56
  127. package/source/class/qx/bom/element/__init__.js +4 -4
  128. package/source/class/qx/bom/media/Abstract.js +136 -143
  129. package/source/class/qx/bom/media/Audio.js +7 -12
  130. package/source/class/qx/bom/media/Video.js +15 -27
  131. package/source/class/qx/bom/request/IRequest.js +18 -21
  132. package/source/class/qx/bom/request/Jsonp.js +34 -39
  133. package/source/class/qx/bom/request/Script.js +94 -90
  134. package/source/class/qx/bom/request/SimpleXhr.js +111 -79
  135. package/source/class/qx/bom/request/Xhr.js +196 -143
  136. package/source/class/qx/bom/request/__init__.js +1 -1
  137. package/source/class/qx/bom/rest/Resource.js +269 -203
  138. package/source/class/qx/bom/storage/Memory.js +18 -29
  139. package/source/class/qx/bom/storage/UserData.js +28 -35
  140. package/source/class/qx/bom/storage/Web.js +19 -30
  141. package/source/class/qx/bom/webfonts/Manager.js +199 -130
  142. package/source/class/qx/bom/webfonts/Validator.js +84 -118
  143. package/source/class/qx/bom/webfonts/WebFont.js +24 -28
  144. package/source/class/qx/bom/webfonts/__init__.js +1 -1
  145. package/source/class/qx/core/Aspect.js +15 -22
  146. package/source/class/qx/core/Assert.js +391 -333
  147. package/source/class/qx/core/AssertionError.js +6 -15
  148. package/source/class/qx/core/BaseInit.js +25 -28
  149. package/source/class/qx/core/Environment.js +72 -86
  150. package/source/class/qx/core/GlobalError.js +12 -20
  151. package/source/class/qx/core/IDisposable.js +6 -9
  152. package/source/class/qx/core/Id.js +25 -15
  153. package/source/class/qx/core/Init.js +20 -20
  154. package/source/class/qx/core/MAssert.js +54 -97
  155. package/source/class/qx/core/MBindTo.js +10 -14
  156. package/source/class/qx/core/MEvent.js +76 -65
  157. package/source/class/qx/core/MLogging.js +9 -18
  158. package/source/class/qx/core/MObjectId.js +104 -65
  159. package/source/class/qx/core/MProperty.js +18 -34
  160. package/source/class/qx/core/Object.js +93 -122
  161. package/source/class/qx/core/ObjectRegistry.js +58 -81
  162. package/source/class/qx/core/Property.js +974 -780
  163. package/source/class/qx/core/ValidationError.js +3 -4
  164. package/source/class/qx/core/WindowError.js +13 -24
  165. package/source/class/qx/core/Wrapper.js +8 -9
  166. package/source/class/qx/data/Array.js +178 -191
  167. package/source/class/qx/data/Conversion.js +11 -18
  168. package/source/class/qx/data/IListData.js +11 -20
  169. package/source/class/qx/data/MBinding.js +31 -26
  170. package/source/class/qx/data/SingleValueBinding.js +491 -225
  171. package/source/class/qx/data/__init__.js +1 -1
  172. package/source/class/qx/data/controller/CheckedList.js +82 -54
  173. package/source/class/qx/data/controller/Form.js +81 -69
  174. package/source/class/qx/data/controller/IControllerDelegate.js +7 -12
  175. package/source/class/qx/data/controller/ISelection.js +6 -10
  176. package/source/class/qx/data/controller/List.js +151 -167
  177. package/source/class/qx/data/controller/MSelection.js +53 -72
  178. package/source/class/qx/data/controller/Object.js +106 -77
  179. package/source/class/qx/data/controller/Tree.js +164 -142
  180. package/source/class/qx/data/controller/__init__.js +1 -1
  181. package/source/class/qx/data/controller/website/List.js +34 -43
  182. package/source/class/qx/data/controller/website/__init__.js +2 -2
  183. package/source/class/qx/data/marshal/IMarshaler.js +4 -7
  184. package/source/class/qx/data/marshal/IMarshalerDelegate.js +10 -18
  185. package/source/class/qx/data/marshal/Json.js +112 -85
  186. package/source/class/qx/data/marshal/MEventBubbling.js +44 -42
  187. package/source/class/qx/data/marshal/__init__.js +1 -1
  188. package/source/class/qx/data/store/IStoreDelegate.js +6 -9
  189. package/source/class/qx/data/store/Json.js +71 -85
  190. package/source/class/qx/data/store/Jsonp.js +19 -25
  191. package/source/class/qx/data/store/Offline.js +21 -29
  192. package/source/class/qx/data/store/Rest.js +25 -23
  193. package/source/class/qx/data/store/__init__.js +1 -1
  194. package/source/class/qx/dev/Debug.js +105 -124
  195. package/source/class/qx/dev/FakeServer.js +68 -65
  196. package/source/class/qx/dev/ObjectSummary.js +33 -39
  197. package/source/class/qx/dev/Profile.js +62 -63
  198. package/source/class/qx/dev/StackTrace.js +64 -70
  199. package/source/class/qx/dev/Tokenizer.js +114 -126
  200. package/source/class/qx/dev/unit/AbstractTestSuite.js +17 -31
  201. package/source/class/qx/dev/unit/AsyncWrapper.js +22 -26
  202. package/source/class/qx/dev/unit/JsUnitTestResult.js +9 -21
  203. package/source/class/qx/dev/unit/MMeasure.js +46 -37
  204. package/source/class/qx/dev/unit/MMock.js +236 -240
  205. package/source/class/qx/dev/unit/MRequirements.js +53 -79
  206. package/source/class/qx/dev/unit/MRequirementsBasic.js +24 -19
  207. package/source/class/qx/dev/unit/MTestLoader.js +52 -57
  208. package/source/class/qx/dev/unit/MeasurementResult.js +18 -22
  209. package/source/class/qx/dev/unit/RequirementError.js +8 -17
  210. package/source/class/qx/dev/unit/Sinon.js +18826 -4613
  211. package/source/class/qx/dev/unit/TestCase.js +40 -51
  212. package/source/class/qx/dev/unit/TestClass.js +22 -23
  213. package/source/class/qx/dev/unit/TestFunction.js +28 -48
  214. package/source/class/qx/dev/unit/TestLoader.js +11 -14
  215. package/source/class/qx/dev/unit/TestLoaderBasic.js +3 -6
  216. package/source/class/qx/dev/unit/TestLoaderInline.js +8 -14
  217. package/source/class/qx/dev/unit/TestLoaderMobile.js +8 -14
  218. package/source/class/qx/dev/unit/TestLoaderNative.js +7 -13
  219. package/source/class/qx/dev/unit/TestResult.js +140 -118
  220. package/source/class/qx/dev/unit/TestSuite.js +46 -55
  221. package/source/class/qx/dom/Element.js +29 -74
  222. package/source/class/qx/dom/Hierarchy.js +60 -95
  223. package/source/class/qx/dom/Node.js +54 -81
  224. package/source/class/qx/dom/__init__.js +9 -9
  225. package/source/class/qx/event/AcceleratingTimer.js +28 -46
  226. package/source/class/qx/event/Emitter.js +54 -49
  227. package/source/class/qx/event/GlobalError.js +22 -38
  228. package/source/class/qx/event/IEventDispatcher.js +4 -9
  229. package/source/class/qx/event/IEventHandler.js +7 -13
  230. package/source/class/qx/event/Idle.js +32 -47
  231. package/source/class/qx/event/Manager.js +222 -237
  232. package/source/class/qx/event/Messaging.js +55 -48
  233. package/source/class/qx/event/Pool.js +5 -8
  234. package/source/class/qx/event/Registration.js +128 -118
  235. package/source/class/qx/event/Timer.js +50 -96
  236. package/source/class/qx/event/Utils.js +41 -28
  237. package/source/class/qx/event/dispatch/AbstractBubbling.js +133 -93
  238. package/source/class/qx/event/dispatch/Direct.js +46 -51
  239. package/source/class/qx/event/dispatch/DomBubbling.js +8 -15
  240. package/source/class/qx/event/dispatch/MouseCapture.js +74 -91
  241. package/source/class/qx/event/handler/Appear.js +40 -77
  242. package/source/class/qx/event/handler/Application.js +100 -126
  243. package/source/class/qx/event/handler/Capture.js +15 -37
  244. package/source/class/qx/event/handler/DragDrop.js +342 -228
  245. package/source/class/qx/event/handler/Element.js +45 -72
  246. package/source/class/qx/event/handler/ElementResize.js +35 -70
  247. package/source/class/qx/event/handler/Focus.js +908 -637
  248. package/source/class/qx/event/handler/Gesture.js +144 -93
  249. package/source/class/qx/event/handler/GestureCore.js +214 -163
  250. package/source/class/qx/event/handler/Iframe.js +21 -35
  251. package/source/class/qx/event/handler/Input.js +332 -209
  252. package/source/class/qx/event/handler/Keyboard.js +325 -270
  253. package/source/class/qx/event/handler/Mouse.js +212 -173
  254. package/source/class/qx/event/handler/Object.js +13 -31
  255. package/source/class/qx/event/handler/Offline.js +52 -67
  256. package/source/class/qx/event/handler/Orientation.js +56 -62
  257. package/source/class/qx/event/handler/OrientationCore.js +33 -43
  258. package/source/class/qx/event/handler/Pointer.js +84 -72
  259. package/source/class/qx/event/handler/PointerCore.js +183 -105
  260. package/source/class/qx/event/handler/Touch.js +43 -59
  261. package/source/class/qx/event/handler/TouchCore.js +159 -120
  262. package/source/class/qx/event/handler/Transition.js +91 -100
  263. package/source/class/qx/event/handler/UserAction.js +18 -42
  264. package/source/class/qx/event/handler/Video.js +12 -12
  265. package/source/class/qx/event/handler/Window.js +53 -69
  266. package/source/class/qx/event/message/Bus.js +109 -128
  267. package/source/class/qx/event/message/Message.js +14 -29
  268. package/source/class/qx/event/type/Data.js +11 -22
  269. package/source/class/qx/event/type/Dom.js +37 -52
  270. package/source/class/qx/event/type/Drag.js +37 -56
  271. package/source/class/qx/event/type/Event.js +80 -104
  272. package/source/class/qx/event/type/Focus.js +5 -8
  273. package/source/class/qx/event/type/GeoPosition.js +32 -41
  274. package/source/class/qx/event/type/KeyInput.js +9 -19
  275. package/source/class/qx/event/type/KeySequence.js +10 -21
  276. package/source/class/qx/event/type/Mouse.js +69 -72
  277. package/source/class/qx/event/type/MouseWheel.js +5 -9
  278. package/source/class/qx/event/type/Native.js +16 -27
  279. package/source/class/qx/event/type/Orientation.js +18 -30
  280. package/source/class/qx/event/type/Pinch.js +21 -27
  281. package/source/class/qx/event/type/Pointer.js +38 -41
  282. package/source/class/qx/event/type/Rest.js +7 -10
  283. package/source/class/qx/event/type/Roll.js +49 -58
  284. package/source/class/qx/event/type/Rotate.js +21 -27
  285. package/source/class/qx/event/type/Swipe.js +75 -86
  286. package/source/class/qx/event/type/Tap.js +2 -4
  287. package/source/class/qx/event/type/Touch.js +262 -286
  288. package/source/class/qx/event/type/Track.js +23 -28
  289. package/source/class/qx/event/type/dom/Custom.js +24 -20
  290. package/source/class/qx/event/type/dom/Pointer.js +86 -60
  291. package/source/class/qx/event/util/Keyboard.js +94 -106
  292. package/source/class/qx/html/Blocker.js +17 -18
  293. package/source/class/qx/html/Canvas.js +13 -29
  294. package/source/class/qx/html/Element.js +372 -497
  295. package/source/class/qx/html/Factory.js +31 -26
  296. package/source/class/qx/html/Iframe.js +35 -69
  297. package/source/class/qx/html/Image.js +43 -55
  298. package/source/class/qx/html/Input.js +44 -57
  299. package/source/class/qx/html/Jsx.js +49 -41
  300. package/source/class/qx/html/JsxRef.js +3 -5
  301. package/source/class/qx/html/Label.js +20 -32
  302. package/source/class/qx/html/Node.js +362 -422
  303. package/source/class/qx/html/Root.js +7 -16
  304. package/source/class/qx/html/Text.js +34 -27
  305. package/source/class/qx/io/ImageLoader.js +66 -90
  306. package/source/class/qx/io/PartLoader.js +17 -30
  307. package/source/class/qx/io/__init__.js +5 -3
  308. package/source/class/qx/io/exception/Cancel.js +33 -0
  309. package/source/class/qx/io/exception/Exception.js +37 -0
  310. package/source/class/qx/{tool/compiler/Version.js → io/exception/Protocol.js} +12 -7
  311. package/source/class/qx/io/exception/Transport.js +38 -0
  312. package/source/class/qx/io/exception/__init__.js +4 -0
  313. package/source/class/qx/io/graphql/Client.js +122 -0
  314. package/source/class/qx/io/graphql/__init__.js +9 -0
  315. package/source/class/qx/io/graphql/protocol/Message.js +65 -0
  316. package/source/class/qx/io/graphql/protocol/Request.js +93 -0
  317. package/source/class/qx/io/graphql/protocol/Response.js +63 -0
  318. package/source/class/qx/io/graphql/protocol/__init__.js +6 -0
  319. package/source/class/qx/io/jsonrpc/Client.js +355 -0
  320. package/source/class/qx/io/jsonrpc/__init__.js +15 -0
  321. package/source/class/qx/io/jsonrpc/protocol/Batch.js +103 -0
  322. package/source/class/qx/io/jsonrpc/protocol/Error.js +65 -0
  323. package/source/class/qx/io/jsonrpc/protocol/Message.js +48 -0
  324. package/source/class/qx/io/jsonrpc/protocol/Notification.js +47 -0
  325. package/source/class/qx/io/jsonrpc/protocol/Parser.js +105 -0
  326. package/source/class/qx/io/jsonrpc/protocol/Request.js +94 -0
  327. package/source/class/qx/io/jsonrpc/protocol/Result.js +49 -0
  328. package/source/class/qx/io/jsonrpc/protocol/__init__.js +5 -0
  329. package/source/class/qx/io/part/ClosurePart.js +16 -35
  330. package/source/class/qx/io/part/Package.js +35 -63
  331. package/source/class/qx/io/part/Part.js +29 -53
  332. package/source/class/qx/io/part/__init__.js +4 -4
  333. package/source/class/qx/io/request/AbstractRequest.js +268 -201
  334. package/source/class/qx/io/request/Jsonp.js +16 -19
  335. package/source/class/qx/io/request/Xhr.js +38 -37
  336. package/source/class/qx/io/request/__init__.js +1 -1
  337. package/source/class/qx/io/request/authentication/Basic.js +7 -13
  338. package/source/class/qx/io/request/authentication/Bearer.js +46 -0
  339. package/source/class/qx/io/request/authentication/IAuthentication.js +3 -6
  340. package/source/class/qx/io/request/authentication/__init__.js +1 -1
  341. package/source/class/qx/io/rest/Resource.js +122 -90
  342. package/source/class/qx/io/transport/AbstractClient.js +121 -0
  343. package/source/class/qx/io/transport/AbstractTransport.js +40 -0
  344. package/source/class/qx/io/transport/Fetch.js +98 -0
  345. package/source/class/qx/io/transport/ITransport.js +42 -0
  346. package/source/class/qx/io/transport/PostMessage.js +54 -0
  347. package/source/class/qx/io/transport/Websocket.js +97 -0
  348. package/source/class/qx/io/transport/Xhr.js +138 -0
  349. package/source/class/qx/io/transport/__init__.js +18 -0
  350. package/source/class/qx/lang/Array.js +133 -170
  351. package/source/class/qx/lang/Function.js +101 -104
  352. package/source/class/qx/lang/Json.js +1041 -774
  353. package/source/class/qx/lang/Number.js +11 -16
  354. package/source/class/qx/lang/Object.js +129 -100
  355. package/source/class/qx/lang/String.js +86 -94
  356. package/source/class/qx/lang/Type.js +44 -65
  357. package/source/class/qx/lang/normalize/Array.js +39 -49
  358. package/source/class/qx/lang/normalize/Date.js +50 -32
  359. package/source/class/qx/lang/normalize/Error.js +4 -7
  360. package/source/class/qx/lang/normalize/Function.js +11 -19
  361. package/source/class/qx/lang/normalize/Number.js +3 -5
  362. package/source/class/qx/lang/normalize/Object.js +17 -18
  363. package/source/class/qx/lang/normalize/String.js +39 -40
  364. package/source/class/qx/locale/Date.js +175 -178
  365. package/source/class/qx/locale/Key.js +13 -11
  366. package/source/class/qx/locale/LocalizedString.js +18 -15
  367. package/source/class/qx/locale/MTranslation.js +22 -23
  368. package/source/class/qx/locale/Manager.js +62 -100
  369. package/source/class/qx/locale/Number.js +20 -12
  370. package/source/class/qx/locale/String.js +26 -15
  371. package/source/class/qx/log/Logger.js +128 -180
  372. package/source/class/qx/log/__init__.js +3 -3
  373. package/source/class/qx/log/appender/Console.js +100 -111
  374. package/source/class/qx/log/appender/Element.js +25 -39
  375. package/source/class/qx/log/appender/Formatter.js +117 -66
  376. package/source/class/qx/log/appender/Native.js +4 -10
  377. package/source/class/qx/log/appender/NodeConsole.js +20 -28
  378. package/source/class/qx/log/appender/PhoneGap.js +5 -13
  379. package/source/class/qx/log/appender/RhinoConsole.js +12 -23
  380. package/source/class/qx/log/appender/RhinoFile.js +19 -26
  381. package/source/class/qx/log/appender/RingBuffer.js +10 -19
  382. package/source/class/qx/log/appender/Util.js +11 -9
  383. package/source/class/qx/module/Animation.js +73 -63
  384. package/source/class/qx/module/Attribute.js +27 -46
  385. package/source/class/qx/module/Blocker.js +33 -41
  386. package/source/class/qx/module/Cookie.js +6 -10
  387. package/source/class/qx/module/Css.js +82 -97
  388. package/source/class/qx/module/Dataset.js +12 -24
  389. package/source/class/qx/module/Environment.js +4 -6
  390. package/source/class/qx/module/Event.js +124 -127
  391. package/source/class/qx/module/Io.js +5 -9
  392. package/source/class/qx/module/Manipulating.js +98 -117
  393. package/source/class/qx/module/MatchMedia.js +50 -24
  394. package/source/class/qx/module/Messaging.js +6 -10
  395. package/source/class/qx/module/Placeholder.js +54 -44
  396. package/source/class/qx/module/Placement.js +33 -33
  397. package/source/class/qx/module/Rest.js +3 -4
  398. package/source/class/qx/module/Storage.js +34 -48
  399. package/source/class/qx/module/Template.js +6 -9
  400. package/source/class/qx/module/TextSelection.js +13 -21
  401. package/source/class/qx/module/Transform.js +28 -45
  402. package/source/class/qx/module/Traversing.js +160 -154
  403. package/source/class/qx/module/__init__.js +1 -1
  404. package/source/class/qx/module/dev/FakeServer.js +19 -25
  405. package/source/class/qx/module/event/GestureHandler.js +25 -13
  406. package/source/class/qx/module/event/Keyboard.js +42 -31
  407. package/source/class/qx/module/event/Mouse.js +48 -46
  408. package/source/class/qx/module/event/Native.js +18 -30
  409. package/source/class/qx/module/event/Orientation.js +11 -18
  410. package/source/class/qx/module/event/OrientationHandler.js +19 -17
  411. package/source/class/qx/module/event/Pinch.js +13 -14
  412. package/source/class/qx/module/event/Pointer.js +22 -22
  413. package/source/class/qx/module/event/PointerHandler.js +14 -11
  414. package/source/class/qx/module/event/Rotate.js +13 -14
  415. package/source/class/qx/module/event/Swipe.js +18 -24
  416. package/source/class/qx/module/event/Tap.js +25 -25
  417. package/source/class/qx/module/event/Touch.js +4 -7
  418. package/source/class/qx/module/event/TouchHandler.js +16 -16
  419. package/source/class/qx/module/event/Track.js +13 -14
  420. package/source/class/qx/module/util/Array.js +30 -41
  421. package/source/class/qx/module/util/Function.js +1 -2
  422. package/source/class/qx/module/util/Object.js +8 -11
  423. package/source/class/qx/module/util/String.js +10 -18
  424. package/source/class/qx/module/util/Type.js +3 -4
  425. package/source/class/qx/test/Annotation.js +195 -89
  426. package/source/class/qx/test/Bootstrap.js +98 -124
  427. package/source/class/qx/test/Browser.js +8 -11
  428. package/source/class/qx/test/Class.js +164 -198
  429. package/source/class/qx/test/Dom.js +10 -28
  430. package/source/class/qx/test/EditDistance.js +16 -16
  431. package/source/class/qx/test/Interface.js +380 -383
  432. package/source/class/qx/test/MAppearance.js +10 -14
  433. package/source/class/qx/test/MDecoration.js +1 -3
  434. package/source/class/qx/test/Mixin.js +449 -173
  435. package/source/class/qx/test/Promise.js +422 -333
  436. package/source/class/qx/test/Theme.js +204 -179
  437. package/source/class/qx/test/Xml.js +155 -84
  438. package/source/class/qx/test/application/Routing.js +45 -44
  439. package/source/class/qx/test/bom/AnimationFrame.js +23 -21
  440. package/source/class/qx/test/bom/Attribute.js +66 -47
  441. package/source/class/qx/test/bom/Basic.js +52 -27
  442. package/source/class/qx/test/bom/Blocker.js +100 -70
  443. package/source/class/qx/test/bom/Class.js +19 -34
  444. package/source/class/qx/test/bom/Cookie.js +49 -28
  445. package/source/class/qx/test/bom/Dataset.js +12 -24
  446. package/source/class/qx/test/bom/Element.js +55 -47
  447. package/source/class/qx/test/bom/Event.js +68 -45
  448. package/source/class/qx/test/bom/FileReader.js +6 -12
  449. package/source/class/qx/test/bom/Font.js +256 -118
  450. package/source/class/qx/test/bom/GeoLocation.js +82 -64
  451. package/source/class/qx/test/bom/History.js +63 -84
  452. package/source/class/qx/test/bom/IdleCallback.js +51 -38
  453. package/source/class/qx/test/bom/Iframe.js +14 -18
  454. package/source/class/qx/test/bom/Label.js +74 -105
  455. package/source/class/qx/test/bom/Location.js +70 -99
  456. package/source/class/qx/test/bom/PageVisibility.js +13 -16
  457. package/source/class/qx/test/bom/Selector.js +16 -16
  458. package/source/class/qx/test/bom/String.js +19 -15
  459. package/source/class/qx/test/bom/Stylesheet.js +39 -48
  460. package/source/class/qx/test/bom/Template.js +49 -57
  461. package/source/class/qx/test/bom/Viewport.js +7 -11
  462. package/source/class/qx/test/bom/WebWorker.js +49 -37
  463. package/source/class/qx/test/bom/Window.js +6 -12
  464. package/source/class/qx/test/bom/client/Css.js +26 -19
  465. package/source/class/qx/test/bom/client/Device.js +29 -18
  466. package/source/class/qx/test/bom/client/OperatingSystem.js +17 -20
  467. package/source/class/qx/test/bom/client/Pdfjs.js +15 -13
  468. package/source/class/qx/test/bom/element/AnimationHandle.js +20 -17
  469. package/source/class/qx/test/bom/element/AnimationJs.js +48 -31
  470. package/source/class/qx/test/bom/element/Background.js +93 -46
  471. package/source/class/qx/test/bom/element/BoxSizing.js +66 -61
  472. package/source/class/qx/test/bom/element/Class.js +33 -58
  473. package/source/class/qx/test/bom/element/Dimension.js +58 -37
  474. package/source/class/qx/test/bom/element/Style.js +87 -83
  475. package/source/class/qx/test/bom/element/Transform.js +209 -86
  476. package/source/class/qx/test/bom/media/Audio.js +18 -14
  477. package/source/class/qx/test/bom/media/MediaTestCase.js +61 -66
  478. package/source/class/qx/test/bom/media/Video.js +39 -28
  479. package/source/class/qx/test/bom/request/Jsonp.js +60 -57
  480. package/source/class/qx/test/bom/request/Script.js +150 -138
  481. package/source/class/qx/test/bom/request/SimpleXhr.js +206 -134
  482. package/source/class/qx/test/bom/request/Xhr.js +179 -132
  483. package/source/class/qx/test/bom/request/XhrWithRemote.js +206 -160
  484. package/source/class/qx/test/bom/rest/Resource.js +345 -281
  485. package/source/class/qx/test/bom/rest/ResourceWithRemote.js +74 -57
  486. package/source/class/qx/test/bom/storage/Local.js +3 -4
  487. package/source/class/qx/test/bom/storage/Session.js +3 -4
  488. package/source/class/qx/test/bom/storage/WebStorageTestCase.js +28 -27
  489. package/source/class/qx/test/bom/webfonts/Abstract.js +8 -10
  490. package/source/class/qx/test/bom/webfonts/Manager.js +127 -80
  491. package/source/class/qx/test/bom/webfonts/Validator.js +36 -30
  492. package/source/class/qx/test/compiler/ClassFile.js +29 -11
  493. package/source/class/qx/test/compiler/jsdoc/Parser.js +122 -96
  494. package/source/class/qx/test/core/Assert.js +151 -86
  495. package/source/class/qx/test/core/Environment.js +162 -123
  496. package/source/class/qx/test/core/EventEmitterDummy.js +7 -8
  497. package/source/class/qx/test/core/InheritanceDummy.js +23 -33
  498. package/source/class/qx/test/core/MemoryManagement.js +13 -5
  499. package/source/class/qx/test/core/Object.js +106 -112
  500. package/source/class/qx/test/core/ObjectId.js +7 -6
  501. package/source/class/qx/test/core/Property.js +483 -387
  502. package/source/class/qx/test/core/PropertyHelper.js +49 -64
  503. package/source/class/qx/test/core/Target.js +9 -13
  504. package/source/class/qx/test/core/Validation.js +409 -136
  505. package/source/class/qx/test/data/DataArray.js +1059 -394
  506. package/source/class/qx/test/data/DataArrayWithChangeBubble.js +315 -172
  507. package/source/class/qx/test/data/__init__.js +4 -4
  508. package/source/class/qx/test/data/controller/Form.js +141 -99
  509. package/source/class/qx/test/data/controller/FormWithArrayAndModel.js +66 -51
  510. package/source/class/qx/test/data/controller/List.js +644 -336
  511. package/source/class/qx/test/data/controller/ListReverse.js +64 -63
  512. package/source/class/qx/test/data/controller/ListWithObjects.js +305 -149
  513. package/source/class/qx/test/data/controller/Object.js +252 -94
  514. package/source/class/qx/test/data/controller/Tree.js +1219 -383
  515. package/source/class/qx/test/data/controller/__init__.js +4 -4
  516. package/source/class/qx/test/data/marshal/Json.js +832 -447
  517. package/source/class/qx/test/data/marshal/__init__.js +4 -4
  518. package/source/class/qx/test/data/singlevalue/Array.js +383 -144
  519. package/source/class/qx/test/data/singlevalue/Deep.js +361 -175
  520. package/source/class/qx/test/data/singlevalue/Resolve.js +51 -29
  521. package/source/class/qx/test/data/singlevalue/Simple.js +530 -208
  522. package/source/class/qx/test/data/singlevalue/TextFieldDummy.js +32 -28
  523. package/source/class/qx/test/data/singlevalue/__init__.js +4 -4
  524. package/source/class/qx/test/data/store/Json.js +574 -313
  525. package/source/class/qx/test/data/store/Jsonp.js +103 -77
  526. package/source/class/qx/test/data/store/Offline.js +127 -110
  527. package/source/class/qx/test/data/store/Rest.js +58 -52
  528. package/source/class/qx/test/data/store/RestWithRemote.js +36 -30
  529. package/source/class/qx/test/data/store/__init__.js +4 -4
  530. package/source/class/qx/test/dev/Debug.js +9 -13
  531. package/source/class/qx/test/dev/StackTrace.js +51 -42
  532. package/source/class/qx/test/dev/unit/Requirements.js +36 -49
  533. package/source/class/qx/test/dev/unit/Sinon.js +85 -73
  534. package/source/class/qx/test/dev/unit/TestCase.js +12 -17
  535. package/source/class/qx/test/dom/Element.js +17 -12
  536. package/source/class/qx/test/dom/Hierarchy.js +53 -38
  537. package/source/class/qx/test/dom/Node.js +97 -43
  538. package/source/class/qx/test/event/Bubbling.js +258 -88
  539. package/source/class/qx/test/event/Emitter.js +38 -39
  540. package/source/class/qx/test/event/GlobalError.js +59 -87
  541. package/source/class/qx/test/event/GlobalEventMonitors.js +22 -25
  542. package/source/class/qx/test/event/Messaging.js +66 -49
  543. package/source/class/qx/test/event/MockBubblingHandler.js +10 -15
  544. package/source/class/qx/test/event/MockHandler.js +14 -33
  545. package/source/class/qx/test/event/Registration.js +38 -32
  546. package/source/class/qx/test/event/Timer.js +61 -39
  547. package/source/class/qx/test/event/Utils.js +164 -123
  548. package/source/class/qx/test/event/dispatch/MouseCapture.js +61 -51
  549. package/source/class/qx/test/event/dispatch/MouseEventOnDocument.js +22 -23
  550. package/source/class/qx/test/event/dispatch/TestingHandler.js +8 -10
  551. package/source/class/qx/test/event/dispatch/TestingWindow.js +9 -13
  552. package/source/class/qx/test/event/dispatch/__init__.js +4 -4
  553. package/source/class/qx/test/event/handler/Offline.js +7 -8
  554. package/source/class/qx/test/event/message/Bus.js +112 -72
  555. package/source/class/qx/test/event/message/__init__.js +4 -4
  556. package/source/class/qx/test/event/type/Dom.js +12 -11
  557. package/source/class/qx/test/event/type/Event.js +7 -16
  558. package/source/class/qx/test/event/type/Mouse.js +12 -11
  559. package/source/class/qx/test/event/type/Native.js +12 -11
  560. package/source/class/qx/test/event/type/__init__.js +4 -4
  561. package/source/class/qx/test/event/util/Keyboard.js +4 -3
  562. package/source/class/qx/test/html/Element.js +538 -239
  563. package/source/class/qx/test/html/Iframe.js +85 -73
  564. package/source/class/qx/test/html/jsx/TestJsx.js +15 -4
  565. package/source/class/qx/test/html/jsx/TestJsxBrowser.js +37 -19
  566. package/source/class/qx/test/html/jsx/TestWidget.js +26 -26
  567. package/source/class/qx/test/io/ImageLoader.js +256 -160
  568. package/source/class/qx/test/io/MAssert.js +46 -0
  569. package/source/class/qx/test/io/MRemoteTest.js +9 -11
  570. package/source/class/qx/test/io/__init__.js +4 -4
  571. package/source/class/qx/test/io/graphql/Client.js +190 -0
  572. package/source/class/qx/test/io/graphql/ClientFetch.js +34 -0
  573. package/source/class/qx/test/io/graphql/Request.js +41 -0
  574. package/source/class/qx/test/io/jsonrpc/Client.js +333 -0
  575. package/source/class/qx/test/io/jsonrpc/Protocol.js +108 -0
  576. package/source/class/qx/test/io/request/Jsonp.js +23 -20
  577. package/source/class/qx/test/io/request/JsonpWithRemote.js +25 -22
  578. package/source/class/qx/test/io/request/MRequest.js +137 -114
  579. package/source/class/qx/test/io/request/Xhr.js +367 -209
  580. package/source/class/qx/test/io/request/XhrWithRemote.js +133 -100
  581. package/source/class/qx/test/io/rest/Resource.js +325 -270
  582. package/source/class/qx/test/io/rest/ResourceWithRemote.js +75 -58
  583. package/source/class/qx/test/io/transport/PostMessage.js +56 -0
  584. package/source/class/qx/test/io/transport/Websocket.js +64 -0
  585. package/source/class/qx/test/lang/Array.js +79 -105
  586. package/source/class/qx/test/lang/Function.js +64 -53
  587. package/source/class/qx/test/lang/Json.js +51 -79
  588. package/source/class/qx/test/lang/Number.js +4 -6
  589. package/source/class/qx/test/lang/Object.js +143 -133
  590. package/source/class/qx/test/lang/String.js +151 -95
  591. package/source/class/qx/test/lang/Type.js +34 -44
  592. package/source/class/qx/test/lang/Webkit.js +8 -13
  593. package/source/class/qx/test/lang/normalize/Array.js +121 -68
  594. package/source/class/qx/test/lang/normalize/Date.js +232 -49
  595. package/source/class/qx/test/lang/normalize/Error.js +5 -8
  596. package/source/class/qx/test/lang/normalize/Function.js +7 -13
  597. package/source/class/qx/test/lang/normalize/Object.js +22 -29
  598. package/source/class/qx/test/lang/normalize/String.js +19 -28
  599. package/source/class/qx/test/locale/Date.js +91 -43
  600. package/source/class/qx/test/locale/Locale.js +52 -32
  601. package/source/class/qx/test/locale/LocalizedString.js +12 -12
  602. package/source/class/qx/test/log/DeprecationMethodOverriding.js +52 -31
  603. package/source/class/qx/test/log/Filters.js +6 -3
  604. package/source/class/qx/test/log/Formatter.js +13 -7
  605. package/source/class/qx/test/log/Logger.js +19 -29
  606. package/source/class/qx/test/log/RingBuffer.js +14 -25
  607. package/source/class/qx/test/log/__init__.js +4 -4
  608. package/source/class/qx/test/log/fixture/ClassA.js +22 -22
  609. package/source/class/qx/test/log/fixture/ClassB1.js +7 -9
  610. package/source/class/qx/test/log/fixture/ClassB2.js +5 -7
  611. package/source/class/qx/test/log/fixture/ClassC1.js +5 -7
  612. package/source/class/qx/test/log/fixture/ClassC2.js +7 -9
  613. package/source/class/qx/test/mobile/LocaleSwitch.js +29 -36
  614. package/source/class/qx/test/mobile/MobileTestCase.js +39 -49
  615. package/source/class/qx/test/mobile/basic/Atom.js +129 -53
  616. package/source/class/qx/test/mobile/basic/Image.js +41 -31
  617. package/source/class/qx/test/mobile/basic/Label.js +6 -10
  618. package/source/class/qx/test/mobile/container/Carousel.js +41 -45
  619. package/source/class/qx/test/mobile/container/Composite.js +48 -65
  620. package/source/class/qx/test/mobile/container/Drawer.js +42 -29
  621. package/source/class/qx/test/mobile/container/Navigation.js +14 -20
  622. package/source/class/qx/test/mobile/container/Scroll.js +23 -19
  623. package/source/class/qx/test/mobile/core/Widget.js +150 -86
  624. package/source/class/qx/test/mobile/dialog/Menu.js +47 -26
  625. package/source/class/qx/test/mobile/dialog/Popup.js +30 -19
  626. package/source/class/qx/test/mobile/embed/Html.js +5 -8
  627. package/source/class/qx/test/mobile/form/Button.js +15 -13
  628. package/source/class/qx/test/mobile/form/CheckBox.js +21 -17
  629. package/source/class/qx/test/mobile/form/Form.js +37 -24
  630. package/source/class/qx/test/mobile/form/Group.js +5 -9
  631. package/source/class/qx/test/mobile/form/Label.js +11 -13
  632. package/source/class/qx/test/mobile/form/NumberField.js +49 -45
  633. package/source/class/qx/test/mobile/form/RadioButton.js +30 -19
  634. package/source/class/qx/test/mobile/form/SelectBox.js +39 -25
  635. package/source/class/qx/test/mobile/form/SingleRenderer.js +31 -27
  636. package/source/class/qx/test/mobile/form/Slider.js +55 -35
  637. package/source/class/qx/test/mobile/form/TextArea.js +34 -24
  638. package/source/class/qx/test/mobile/form/TextField.js +34 -24
  639. package/source/class/qx/test/mobile/form/ToggleButton.js +10 -14
  640. package/source/class/qx/test/mobile/layout/Card.js +21 -17
  641. package/source/class/qx/test/mobile/layout/HBox.js +25 -20
  642. package/source/class/qx/test/mobile/layout/VBox.js +25 -21
  643. package/source/class/qx/test/mobile/list/List.js +114 -83
  644. package/source/class/qx/test/mobile/navigationbar/NavigationBar.js +5 -9
  645. package/source/class/qx/test/mobile/page/Manager.js +7 -13
  646. package/source/class/qx/test/mobile/page/NavigationPage.js +7 -17
  647. package/source/class/qx/test/mobile/page/Page.js +101 -68
  648. package/source/class/qx/test/mobile/tabbar/TabBar.js +11 -21
  649. package/source/class/qx/test/mobile/toolbar/Toolbar.js +16 -16
  650. package/source/class/qx/test/performance/BaseCall.js +31 -36
  651. package/source/class/qx/test/performance/Event.js +60 -53
  652. package/source/class/qx/test/performance/Object.js +16 -22
  653. package/source/class/qx/test/performance/Property.js +20 -22
  654. package/source/class/qx/test/performance/data/Marshaling.js +25 -30
  655. package/source/class/qx/test/performance/decorator/AbstractDecorator.js +22 -34
  656. package/source/class/qx/test/performance/decorator/Background.js +4 -6
  657. package/source/class/qx/test/performance/decorator/BackgroundScale.js +6 -8
  658. package/source/class/qx/test/performance/decorator/Single.js +4 -6
  659. package/source/class/qx/test/performance/element/Element.js +50 -67
  660. package/source/class/qx/test/performance/widget/AbstractWidget.js +31 -44
  661. package/source/class/qx/test/performance/widget/Button.js +5 -7
  662. package/source/class/qx/test/performance/widget/Label.js +5 -7
  663. package/source/class/qx/test/performance/widget/RichLabel.js +6 -8
  664. package/source/class/qx/test/performance/widget/Widget.js +5 -7
  665. package/source/class/qx/test/performance/widget/WidgetWithDecorator.js +7 -9
  666. package/source/class/qx/test/performance/widget/WidgetWithSingle.js +9 -11
  667. package/source/class/qx/test/renderer/Color.js +22 -49
  668. package/source/class/qx/test/testclasses/BaseClassBoth.js +11 -8
  669. package/source/class/qx/test/testclasses/BaseClassIncluded.js +5 -6
  670. package/source/class/qx/test/testclasses/BaseClassPatched.js +15 -8
  671. package/source/class/qx/test/testclasses/DerivedClassBoth.js +7 -7
  672. package/source/class/qx/test/testclasses/DerivedClassIncluded.js +7 -7
  673. package/source/class/qx/test/testclasses/DerivedClassPatched.js +7 -7
  674. package/source/class/qx/test/testclasses/MMixinOne.js +4 -4
  675. package/source/class/qx/test/testclasses/MMixinTwo.js +2 -2
  676. package/source/class/qx/test/testclasses/RootClass.js +8 -8
  677. package/source/class/qx/test/theme/__init__.js +4 -4
  678. package/source/class/qx/test/theme/manager/Color.js +52 -66
  679. package/source/class/qx/test/theme/manager/Decoration.js +177 -154
  680. package/source/class/qx/test/theme/manager/Font.js +68 -39
  681. package/source/class/qx/test/theme/manager/Icon.js +46 -43
  682. package/source/class/qx/test/theme/manager/Meta.js +121 -110
  683. package/source/class/qx/test/theme/manager/__init__.js +4 -4
  684. package/source/class/qx/test/theme/manager/mock/Appearance.js +17 -23
  685. package/source/class/qx/test/theme/manager/mock/Color.js +7 -9
  686. package/source/class/qx/test/theme/manager/mock/Decoration.js +7 -10
  687. package/source/class/qx/test/theme/manager/mock/Font.js +6 -10
  688. package/source/class/qx/test/theme/simple/Appearance.js +268 -210
  689. package/source/class/qx/test/tool/utils/Utils.js +10 -8
  690. package/source/class/qx/test/toolchain/PrivateOptimization.js +20 -13
  691. package/source/class/qx/test/toolchain/TestRunner.js +12 -12
  692. package/source/class/qx/test/toolchain/VariantOptimization.js +37 -26
  693. package/source/class/qx/test/toolchain/__init__.js +4 -4
  694. package/source/class/qx/test/type/Array.js +8 -12
  695. package/source/class/qx/test/type/BaseArray.js +58 -78
  696. package/source/class/qx/test/type/BaseString.js +30 -61
  697. package/source/class/qx/test/type/__init__.js +4 -4
  698. package/source/class/qx/test/ui/BackgroundColor.js +20 -21
  699. package/source/class/qx/test/ui/ChildrenHandling.js +136 -81
  700. package/source/class/qx/test/ui/Destroy.js +310 -248
  701. package/source/class/qx/test/ui/Focus.js +40 -87
  702. package/source/class/qx/test/ui/Insets.js +14 -18
  703. package/source/class/qx/test/ui/LayoutTestCase.js +99 -92
  704. package/source/class/qx/test/ui/LocaleSwitch.js +37 -41
  705. package/source/class/qx/test/ui/RadioItems.js +11 -22
  706. package/source/class/qx/test/ui/Widget.js +13 -17
  707. package/source/class/qx/test/ui/Window.js +26 -39
  708. package/source/class/qx/test/ui/basic/Atom.js +37 -25
  709. package/source/class/qx/test/ui/basic/Image.js +179 -138
  710. package/source/class/qx/test/ui/basic/Label.js +147 -65
  711. package/source/class/qx/test/ui/basic/__init__.js +4 -4
  712. package/source/class/qx/test/ui/command/Command.js +105 -69
  713. package/source/class/qx/test/ui/command/Group.js +24 -21
  714. package/source/class/qx/test/ui/command/GroupManager.js +7 -12
  715. package/source/class/qx/test/ui/container/Stack.js +26 -36
  716. package/source/class/qx/test/ui/core/AbstractScrollArea.js +84 -67
  717. package/source/class/qx/test/ui/core/Appearance.js +53 -54
  718. package/source/class/qx/test/ui/core/Blocker.js +80 -44
  719. package/source/class/qx/test/ui/core/DragDropScrolling.js +69 -55
  720. package/source/class/qx/test/ui/core/Placement.js +22 -34
  721. package/source/class/qx/test/ui/core/Queues.js +28 -39
  722. package/source/class/qx/test/ui/core/SizeHint.js +32 -76
  723. package/source/class/qx/test/ui/core/SizeHintX.js +8 -15
  724. package/source/class/qx/test/ui/core/SizeHintY.js +8 -15
  725. package/source/class/qx/test/ui/core/Spacer.js +11 -18
  726. package/source/class/qx/test/ui/core/Widget.js +117 -112
  727. package/source/class/qx/test/ui/core/__init__.js +4 -4
  728. package/source/class/qx/test/ui/decoration/LinearGradient.js +18 -14
  729. package/source/class/qx/test/ui/embed/Iframe.js +70 -65
  730. package/source/class/qx/test/ui/embed/__init__.js +4 -4
  731. package/source/class/qx/test/ui/form/AbstractSelectBox.js +11 -16
  732. package/source/class/qx/test/ui/form/AbstractVirtualBox.js +12 -19
  733. package/source/class/qx/test/ui/form/BooleanFormat.js +40 -25
  734. package/source/class/qx/test/ui/form/Color.js +29 -19
  735. package/source/class/qx/test/ui/form/ComboBox.js +39 -67
  736. package/source/class/qx/test/ui/form/Date.js +34 -21
  737. package/source/class/qx/test/ui/form/DateField.js +16 -19
  738. package/source/class/qx/test/ui/form/Executable.js +98 -68
  739. package/source/class/qx/test/ui/form/Field.js +65 -54
  740. package/source/class/qx/test/ui/form/Form.js +211 -123
  741. package/source/class/qx/test/ui/form/FormManager.js +72 -100
  742. package/source/class/qx/test/ui/form/FormValidator.js +549 -399
  743. package/source/class/qx/test/ui/form/Label.js +87 -65
  744. package/source/class/qx/test/ui/form/List.js +19 -19
  745. package/source/class/qx/test/ui/form/MenuButton.js +26 -20
  746. package/source/class/qx/test/ui/form/ModelProperty.js +40 -36
  747. package/source/class/qx/test/ui/form/ModelSelection.js +39 -84
  748. package/source/class/qx/test/ui/form/NumberFormat.js +30 -19
  749. package/source/class/qx/test/ui/form/Placeholder.js +147 -87
  750. package/source/class/qx/test/ui/form/RadioButtonGroup.js +31 -26
  751. package/source/class/qx/test/ui/form/RadioGroup.js +58 -54
  752. package/source/class/qx/test/ui/form/Range.js +63 -28
  753. package/source/class/qx/test/ui/form/Renderer.js +39 -33
  754. package/source/class/qx/test/ui/form/Resetter.js +21 -35
  755. package/source/class/qx/test/ui/form/Slider.js +37 -21
  756. package/source/class/qx/test/ui/form/Spinner.js +9 -5
  757. package/source/class/qx/test/ui/form/SplitButton.js +7 -11
  758. package/source/class/qx/test/ui/form/StringFormat.js +60 -30
  759. package/source/class/qx/test/ui/form/TextArea.js +59 -41
  760. package/source/class/qx/test/ui/form/TextField.js +14 -16
  761. package/source/class/qx/test/ui/form/ToggleButton.js +20 -24
  762. package/source/class/qx/test/ui/form/VirtualSelectBox.js +66 -40
  763. package/source/class/qx/test/ui/form/__init__.js +4 -4
  764. package/source/class/qx/test/ui/form/virtual/VirtualComboBox.js +58 -60
  765. package/source/class/qx/test/ui/form/virtual/VirtualDropDownList.js +120 -110
  766. package/source/class/qx/test/ui/form/virtual/VirtualSelectBox.js +43 -27
  767. package/source/class/qx/test/ui/groupbox/CheckGroupBox.js +13 -18
  768. package/source/class/qx/test/ui/indicator/ProgressBar.js +73 -48
  769. package/source/class/qx/test/ui/layout/Box.js +23 -22
  770. package/source/class/qx/test/ui/layout/Flow.js +233 -153
  771. package/source/class/qx/test/ui/layout/Grid.js +88 -101
  772. package/source/class/qx/test/ui/layout/LayoutItem.js +57 -83
  773. package/source/class/qx/test/ui/layout/LayoutRoot.js +7 -11
  774. package/source/class/qx/test/ui/layout/Util.js +30 -31
  775. package/source/class/qx/test/ui/layout/__init__.js +4 -4
  776. package/source/class/qx/test/ui/list/AbstractListTest.js +13 -21
  777. package/source/class/qx/test/ui/list/Group.js +191 -114
  778. package/source/class/qx/test/ui/list/List.js +189 -132
  779. package/source/class/qx/test/ui/list/MAssert.js +14 -9
  780. package/source/class/qx/test/ui/list/ObjectGroup.js +131 -109
  781. package/source/class/qx/test/ui/list/core/MultiSelection.js +58 -44
  782. package/source/class/qx/test/ui/list/core/SingleSelection.js +43 -43
  783. package/source/class/qx/test/ui/list/fixture/GroupMock.js +6 -9
  784. package/source/class/qx/test/ui/list/fixture/ItemMock.js +9 -13
  785. package/source/class/qx/test/ui/root/Inline.js +22 -20
  786. package/source/class/qx/test/ui/selection/AbstractMultiSelectonTest.js +188 -105
  787. package/source/class/qx/test/ui/selection/AbstractSingleSelectonTest.js +173 -125
  788. package/source/class/qx/test/ui/selection/ListMultiSelection.js +19 -21
  789. package/source/class/qx/test/ui/selection/ListSingleSelection.js +19 -21
  790. package/source/class/qx/test/ui/selection/RadioGroup.js +41 -29
  791. package/source/class/qx/test/ui/selection/SelectBox.js +11 -17
  792. package/source/class/qx/test/ui/selection/Stack.js +22 -27
  793. package/source/class/qx/test/ui/selection/TabView.js +35 -26
  794. package/source/class/qx/test/ui/selection/TreeMultiSelection.js +14 -19
  795. package/source/class/qx/test/ui/selection/TreeSingleSelection.js +20 -24
  796. package/source/class/qx/test/ui/selection/__init__.js +4 -4
  797. package/source/class/qx/test/ui/table/Dispose.js +46 -46
  798. package/source/class/qx/test/ui/table/Table.js +74 -69
  799. package/source/class/qx/test/ui/table/__init__.js +4 -4
  800. package/source/class/qx/test/ui/table/celleditor/AbstractField.js +14 -28
  801. package/source/class/qx/test/ui/table/celleditor/ComboBox.js +11 -18
  802. package/source/class/qx/test/ui/table/celleditor/PasswordField.js +6 -10
  803. package/source/class/qx/test/ui/table/celleditor/SelectBox.js +16 -32
  804. package/source/class/qx/test/ui/table/celleditor/TextField.js +6 -9
  805. package/source/class/qx/test/ui/table/celleditor/__init__.js +4 -4
  806. package/source/class/qx/test/ui/table/columnmodel/Basic.js +130 -129
  807. package/source/class/qx/test/ui/table/model/Filtered.js +51 -36
  808. package/source/class/qx/test/ui/table/model/Simple.js +43 -45
  809. package/source/class/qx/test/ui/table/selection/Model.js +70 -22
  810. package/source/class/qx/test/ui/toolbar/OverflowHandling.js +145 -123
  811. package/source/class/qx/test/ui/toolbar/ToolBar.js +20 -30
  812. package/source/class/qx/test/ui/tree/Tree.js +63 -42
  813. package/source/class/qx/test/ui/tree/TreeFolder.js +44 -46
  814. package/source/class/qx/test/ui/tree/virtual/AbstractTreeTest.js +61 -96
  815. package/source/class/qx/test/ui/tree/virtual/MultiSelection.js +68 -39
  816. package/source/class/qx/test/ui/tree/virtual/OneSelection.js +82 -42
  817. package/source/class/qx/test/ui/tree/virtual/OpenCloseController.js +80 -101
  818. package/source/class/qx/test/ui/tree/virtual/SingleSelection.js +40 -32
  819. package/source/class/qx/test/ui/tree/virtual/Sorting.js +46 -47
  820. package/source/class/qx/test/ui/tree/virtual/Tree.js +267 -191
  821. package/source/class/qx/test/ui/tree/virtual/TreeItem.js +60 -63
  822. package/source/class/qx/test/ui/tree/virtual/UtilTest.js +65 -50
  823. package/source/class/qx/test/ui/tree/virtual/WidgetProvider.js +127 -132
  824. package/source/class/qx/test/ui/virtual/Axis.js +210 -193
  825. package/source/class/qx/test/ui/virtual/Pane.js +287 -190
  826. package/source/class/qx/test/ui/virtual/PaneUpdate.js +71 -77
  827. package/source/class/qx/test/ui/virtual/PointerEventMock.js +10 -13
  828. package/source/class/qx/test/ui/virtual/Scroller.js +29 -39
  829. package/source/class/qx/test/ui/virtual/__init__.js +4 -4
  830. package/source/class/qx/test/ui/virtual/cell/WidgetCell.js +39 -40
  831. package/source/class/qx/test/ui/virtual/layer/CellSpanManager.js +157 -127
  832. package/source/class/qx/test/ui/virtual/layer/Column.js +6 -10
  833. package/source/class/qx/test/ui/virtual/layer/GridLines.js +6 -10
  834. package/source/class/qx/test/ui/virtual/layer/GridLinesHorizontal.js +6 -9
  835. package/source/class/qx/test/ui/virtual/layer/GridLinesVertical.js +6 -9
  836. package/source/class/qx/test/ui/virtual/layer/HtmlCell.js +12 -19
  837. package/source/class/qx/test/ui/virtual/layer/HtmlCellSpan.js +13 -21
  838. package/source/class/qx/test/ui/virtual/layer/LayerMock.js +31 -43
  839. package/source/class/qx/test/ui/virtual/layer/LayerSimple.js +26 -26
  840. package/source/class/qx/test/ui/virtual/layer/LayerTestCase.js +52 -50
  841. package/source/class/qx/test/ui/virtual/layer/Row.js +6 -10
  842. package/source/class/qx/test/ui/virtual/layer/WidgetCell.js +45 -52
  843. package/source/class/qx/test/ui/virtual/layer/WidgetCellSpan.js +71 -48
  844. package/source/class/qx/test/ui/virtual/layer/__init__.js +4 -4
  845. package/source/class/qx/test/ui/virtual/performance/AbstractLayerTest.js +84 -68
  846. package/source/class/qx/test/ui/virtual/performance/DomCell.js +6 -9
  847. package/source/class/qx/test/ui/virtual/performance/DomPoolCell.js +6 -9
  848. package/source/class/qx/test/ui/virtual/performance/HtmlDivCell.js +7 -11
  849. package/source/class/qx/test/ui/virtual/performance/HtmlDivRelative.js +6 -9
  850. package/source/class/qx/test/ui/virtual/performance/HtmlTableCell.js +8 -13
  851. package/source/class/qx/test/ui/virtual/performance/HtmlTableCellNaive.js +8 -13
  852. package/source/class/qx/test/ui/virtual/performance/HtmlTableCssCell.js +8 -19
  853. package/source/class/qx/test/ui/virtual/performance/WidgetCell.js +10 -15
  854. package/source/class/qx/test/ui/virtual/performance/__init__.js +4 -4
  855. package/source/class/qx/test/ui/virtual/performance/layer/DomCell.js +24 -18
  856. package/source/class/qx/test/ui/virtual/performance/layer/DomPoolCell.js +28 -26
  857. package/source/class/qx/test/ui/virtual/performance/layer/HtmlDivRelative.js +13 -17
  858. package/source/class/qx/test/ui/virtual/performance/layer/HtmlTableCell.js +29 -28
  859. package/source/class/qx/test/ui/virtual/performance/layer/HtmlTableCellNaive.js +22 -24
  860. package/source/class/qx/test/ui/virtual/performance/layer/HtmlTableCssCell.js +32 -47
  861. package/source/class/qx/test/ui/virtual/performance/layer/__init__.js +4 -4
  862. package/source/class/qx/test/ui/window/Desktop.js +21 -12
  863. package/source/class/qx/test/util/Base64.js +10 -13
  864. package/source/class/qx/test/util/ColorUtil.js +121 -54
  865. package/source/class/qx/test/util/DateFormat.js +569 -299
  866. package/source/class/qx/test/util/DateMock.js +16 -19
  867. package/source/class/qx/test/util/DeferredCall.js +12 -13
  868. package/source/class/qx/test/util/Delegate.js +28 -26
  869. package/source/class/qx/test/util/DisposeUtil.js +32 -14
  870. package/source/class/qx/test/util/DynamicScriptLoader.js +99 -64
  871. package/source/class/qx/test/util/Fsm.js +16 -18
  872. package/source/class/qx/test/util/Function.js +23 -19
  873. package/source/class/qx/test/util/LibraryManager.js +15 -22
  874. package/source/class/qx/test/util/NumberFormat.js +53 -64
  875. package/source/class/qx/test/util/PropertyUtil.js +35 -35
  876. package/source/class/qx/test/util/Request.js +26 -18
  877. package/source/class/qx/test/util/ResourceManager.js +50 -35
  878. package/source/class/qx/test/util/ResponseParser.js +45 -35
  879. package/source/class/qx/test/util/RingBuffer.js +15 -28
  880. package/source/class/qx/test/util/Serializer.js +210 -153
  881. package/source/class/qx/test/util/StringBuilder.js +7 -13
  882. package/source/class/qx/test/util/StringSplit.js +114 -69
  883. package/source/class/qx/test/util/Uri.js +74 -78
  884. package/source/class/qx/test/util/Validate.js +95 -64
  885. package/source/class/qx/test/util/placement/BestFitAxis.js +17 -26
  886. package/source/class/qx/test/util/placement/DirectAxis.js +8 -11
  887. package/source/class/qx/test/util/placement/KeepAlignAxis.js +17 -26
  888. package/source/class/qx/test/util/placement/Placement.js +607 -244
  889. package/source/class/qx/test/util/placement/__init__.js +4 -4
  890. package/source/class/qx/theme/Classic.js +9 -11
  891. package/source/class/qx/theme/Indigo.js +9 -11
  892. package/source/class/qx/theme/Modern.js +9 -11
  893. package/source/class/qx/theme/Simple.js +9 -11
  894. package/source/class/qx/theme/TangibleDark.js +1 -1
  895. package/source/class/qx/theme/TangibleLight.js +1 -1
  896. package/source/class/qx/theme/__init__.js +4 -4
  897. package/source/class/qx/theme/classic/Appearance.js +995 -1336
  898. package/source/class/qx/theme/classic/Color.js +83 -83
  899. package/source/class/qx/theme/classic/Decoration.js +318 -299
  900. package/source/class/qx/theme/classic/Font.js +38 -25
  901. package/source/class/qx/theme/icon/Oxygen.js +4 -5
  902. package/source/class/qx/theme/icon/Tango.js +4 -5
  903. package/source/class/qx/theme/indigo/Appearance.js +66 -85
  904. package/source/class/qx/theme/indigo/Color.js +65 -66
  905. package/source/class/qx/theme/indigo/Decoration.js +31 -45
  906. package/source/class/qx/theme/indigo/Font.js +20 -29
  907. package/source/class/qx/theme/manager/Appearance.js +58 -91
  908. package/source/class/qx/theme/manager/Color.js +20 -41
  909. package/source/class/qx/theme/manager/Decoration.js +72 -100
  910. package/source/class/qx/theme/manager/Font.js +51 -67
  911. package/source/class/qx/theme/manager/Icon.js +13 -27
  912. package/source/class/qx/theme/manager/Meta.js +27 -44
  913. package/source/class/qx/theme/modern/Appearance.js +1049 -1440
  914. package/source/class/qx/theme/modern/Color.js +155 -166
  915. package/source/class/qx/theme/modern/Decoration.js +471 -598
  916. package/source/class/qx/theme/modern/Font.js +59 -52
  917. package/source/class/qx/theme/simple/Appearance.js +936 -1207
  918. package/source/class/qx/theme/simple/Color.js +62 -62
  919. package/source/class/qx/theme/simple/Decoration.js +456 -678
  920. package/source/class/qx/theme/simple/Font.js +18 -25
  921. package/source/class/qx/theme/simple/Image.js +49 -52
  922. package/source/class/qx/theme/tangible/Appearance.js +1575 -1743
  923. package/source/class/qx/theme/tangible/ColorDark.js +5 -5
  924. package/source/class/qx/theme/tangible/ColorEngine.js +38 -35
  925. package/source/class/qx/theme/tangible/ColorLight.js +7 -7
  926. package/source/class/qx/theme/tangible/Decoration.js +1108 -1300
  927. package/source/class/qx/theme/tangible/Font.js +66 -70
  928. package/source/class/qx/theme/tangible/Image.js +44 -48
  929. package/source/class/qx/tool/cli/Application.js +5 -5
  930. package/source/class/qx/tool/cli/Cli.js +107 -54
  931. package/source/class/qx/tool/cli/ConfigDb.js +18 -15
  932. package/source/class/qx/tool/cli/LibraryApplication.js +1 -1
  933. package/source/class/qx/tool/cli/Watch.js +174 -102
  934. package/source/class/qx/tool/cli/api/AbstractApi.js +17 -18
  935. package/source/class/qx/tool/cli/api/CompilerApi.js +29 -12
  936. package/source/class/qx/tool/cli/api/LibraryApi.js +4 -6
  937. package/source/class/qx/tool/cli/api/Test.js +12 -9
  938. package/source/class/qx/tool/cli/commands/Add.js +12 -15
  939. package/source/class/qx/tool/cli/commands/Clean.js +10 -9
  940. package/source/class/qx/tool/cli/commands/Command.js +25 -13
  941. package/source/class/qx/tool/cli/commands/Compile.js +635 -269
  942. package/source/class/qx/tool/cli/commands/Config.js +75 -42
  943. package/source/class/qx/tool/cli/commands/Create.js +108 -59
  944. package/source/class/qx/tool/cli/commands/Deploy.js +138 -86
  945. package/source/class/qx/tool/cli/commands/Es6ify.js +118 -0
  946. package/source/class/qx/tool/cli/commands/Lint.js +101 -41
  947. package/source/class/qx/tool/cli/commands/Migrate.js +13 -7
  948. package/source/class/qx/tool/cli/commands/Package.js +67 -46
  949. package/source/class/qx/tool/cli/commands/Pkg.js +21 -18
  950. package/source/class/qx/tool/cli/commands/Run.js +57 -37
  951. package/source/class/qx/tool/cli/commands/Serve.js +62 -37
  952. package/source/class/qx/tool/cli/commands/Test.js +40 -18
  953. package/source/class/qx/tool/cli/commands/add/Class.js +66 -28
  954. package/source/class/qx/tool/cli/commands/add/Script.js +54 -27
  955. package/source/class/qx/tool/cli/commands/package/Install.js +265 -103
  956. package/source/class/qx/tool/cli/commands/package/List.js +199 -75
  957. package/source/class/qx/tool/cli/commands/package/Migrate.js +7 -3
  958. package/source/class/qx/tool/cli/commands/package/Publish.js +230 -115
  959. package/source/class/qx/tool/cli/commands/package/Remove.js +40 -17
  960. package/source/class/qx/tool/cli/commands/package/Update.js +115 -48
  961. package/source/class/qx/tool/cli/commands/package/Upgrade.js +41 -20
  962. package/source/class/qx/tool/compiler/Analyser.js +443 -239
  963. package/source/class/qx/tool/compiler/ClassFile.js +831 -401
  964. package/source/class/qx/tool/compiler/Console.js +136 -87
  965. package/source/class/qx/tool/compiler/Es6ify.js +404 -0
  966. package/source/class/qx/tool/compiler/Preprocess.js +28 -25
  967. package/source/class/qx/tool/compiler/app/Application.js +149 -72
  968. package/source/class/qx/tool/compiler/app/Cldr.js +506 -106
  969. package/source/class/qx/tool/compiler/app/Library.js +62 -27
  970. package/source/class/qx/tool/compiler/app/Part.js +10 -12
  971. package/source/class/qx/tool/compiler/app/Translation.js +189 -162
  972. package/source/class/qx/tool/compiler/app/WebFont.js +216 -162
  973. package/source/class/qx/tool/compiler/jsdoc/ChildControlParser.js +3 -3
  974. package/source/class/qx/tool/compiler/jsdoc/CommandParser.js +8 -9
  975. package/source/class/qx/tool/compiler/jsdoc/ParamParser.js +7 -6
  976. package/source/class/qx/tool/compiler/jsdoc/Parser.js +27 -18
  977. package/source/class/qx/tool/compiler/jsdoc/ReturnParser.js +3 -3
  978. package/source/class/qx/tool/compiler/jsdoc/ThrowsParser.js +4 -4
  979. package/source/class/qx/tool/compiler/makers/AbstractAppMaker.js +5 -6
  980. package/source/class/qx/tool/compiler/makers/AppMaker.js +53 -32
  981. package/source/class/qx/tool/compiler/makers/Maker.js +29 -21
  982. package/source/class/qx/tool/compiler/resources/AbstractMatcher.js +8 -8
  983. package/source/class/qx/tool/compiler/resources/Asset.js +123 -61
  984. package/source/class/qx/tool/compiler/resources/ImageLoader.js +18 -8
  985. package/source/class/qx/tool/compiler/resources/Manager.js +156 -93
  986. package/source/class/qx/tool/compiler/resources/MetaLoader.js +5 -3
  987. package/source/class/qx/tool/compiler/resources/ResourceConverter.js +8 -8
  988. package/source/class/qx/tool/compiler/resources/ResourceLoader.js +8 -9
  989. package/source/class/qx/tool/compiler/resources/ScssConverter.js +54 -18
  990. package/source/class/qx/tool/compiler/resources/ScssFile.js +157 -80
  991. package/source/class/qx/tool/compiler/resources/ScssIncludeConverter.js +3 -3
  992. package/source/class/qx/tool/compiler/targets/BuildTarget.js +23 -13
  993. package/source/class/qx/tool/compiler/targets/SourceCodeCopier.js +29 -9
  994. package/source/class/qx/tool/compiler/targets/SourceTarget.js +2 -2
  995. package/source/class/qx/tool/compiler/targets/Target.js +292 -187
  996. package/source/class/qx/tool/compiler/targets/TypeScriptWriter.js +163 -104
  997. package/source/class/qx/tool/compiler/targets/meta/AbstractJavascriptMeta.js +48 -23
  998. package/source/class/qx/tool/compiler/targets/meta/ApplicationMeta.js +75 -62
  999. package/source/class/qx/tool/compiler/targets/meta/BootJs.js +49 -29
  1000. package/source/class/qx/tool/compiler/targets/meta/Javascript.js +6 -7
  1001. package/source/class/qx/tool/compiler/targets/meta/Package.js +54 -51
  1002. package/source/class/qx/tool/compiler/targets/meta/PackageJavascript.js +41 -21
  1003. package/source/class/qx/tool/compiler/targets/meta/Part.js +9 -10
  1004. package/source/class/qx/tool/compiler/targets/meta/PolyfillJs.js +23 -10
  1005. package/source/class/qx/tool/compiler/targets/meta/Uglify.js +35 -23
  1006. package/source/class/qx/tool/config/Abstract.js +61 -25
  1007. package/source/class/qx/tool/config/Compile.js +3 -2
  1008. package/source/class/qx/tool/config/Lockfile.js +3 -2
  1009. package/source/class/qx/tool/config/Manifest.js +3 -2
  1010. package/source/class/qx/tool/config/Registry.js +4 -3
  1011. package/source/class/qx/tool/config/Utils.js +97 -37
  1012. package/source/class/qx/tool/migration/BaseMigration.js +67 -25
  1013. package/source/class/qx/tool/migration/M6_0_0.js +96 -46
  1014. package/source/class/qx/tool/migration/M7_0_0.js +12 -6
  1015. package/source/class/qx/tool/migration/Runner.js +28 -14
  1016. package/source/class/qx/tool/utils/IndexedArray.js +15 -18
  1017. package/source/class/qx/tool/utils/Json.js +36 -15
  1018. package/source/class/qx/tool/utils/LogManager.js +50 -26
  1019. package/source/class/qx/tool/utils/Logger.js +11 -12
  1020. package/source/class/qx/tool/utils/Promisify.js +45 -49
  1021. package/source/class/qx/tool/utils/Utils.js +63 -48
  1022. package/source/class/qx/tool/utils/Values.js +4 -7
  1023. package/source/class/qx/tool/utils/Website.js +82 -29
  1024. package/source/class/qx/tool/utils/files/FindFiles.js +37 -33
  1025. package/source/class/qx/tool/utils/files/Utils.js +74 -54
  1026. package/source/class/qx/tool/utils/json/Parser.js +163 -54
  1027. package/source/class/qx/tool/utils/json/Stringify.js +87 -72
  1028. package/source/class/qx/tool/utils/json/Tokenizer.js +64 -39
  1029. package/source/class/qx/tool/utils/json/Writer.js +20 -21
  1030. package/source/class/qx/type/Array.js +19 -41
  1031. package/source/class/qx/type/BaseArray.js +136 -151
  1032. package/source/class/qx/type/BaseError.js +17 -34
  1033. package/source/class/qx/type/BaseString.js +104 -120
  1034. package/source/class/qx/type/__init__.js +3 -3
  1035. package/source/class/qx/ui/basic/Atom.js +75 -109
  1036. package/source/class/qx/ui/basic/Image.js +283 -319
  1037. package/source/class/qx/ui/basic/Label.js +161 -208
  1038. package/source/class/qx/ui/command/Command.js +51 -86
  1039. package/source/class/qx/ui/command/Group.js +43 -50
  1040. package/source/class/qx/ui/command/GroupManager.js +50 -53
  1041. package/source/class/qx/ui/container/Composite.js +15 -29
  1042. package/source/class/qx/ui/container/Resizer.js +7 -11
  1043. package/source/class/qx/ui/container/Scroll.js +10 -21
  1044. package/source/class/qx/ui/container/SlideBar.js +78 -118
  1045. package/source/class/qx/ui/container/Stack.js +27 -54
  1046. package/source/class/qx/ui/control/ColorPopup.js +109 -130
  1047. package/source/class/qx/ui/control/ColorSelector.js +334 -301
  1048. package/source/class/qx/ui/control/DateChooser.js +143 -177
  1049. package/source/class/qx/ui/core/Blocker.js +91 -127
  1050. package/source/class/qx/ui/core/ColumnData.js +16 -34
  1051. package/source/class/qx/ui/core/DragDropCursor.js +17 -30
  1052. package/source/class/qx/ui/core/DragDropScrolling.js +8 -14
  1053. package/source/class/qx/ui/core/EventHandler.js +108 -132
  1054. package/source/class/qx/ui/core/FocusHandler.js +78 -127
  1055. package/source/class/qx/ui/core/IMultiSelection.js +5 -9
  1056. package/source/class/qx/ui/core/ISingleSelection.js +10 -16
  1057. package/source/class/qx/ui/core/ISingleSelectionProvider.js +4 -6
  1058. package/source/class/qx/ui/core/LayoutItem.js +190 -306
  1059. package/source/class/qx/ui/core/MBlocker.js +22 -38
  1060. package/source/class/qx/ui/core/MChildrenHandling.js +14 -29
  1061. package/source/class/qx/ui/core/MContentPadding.js +50 -69
  1062. package/source/class/qx/ui/core/MDragDropScrolling.js +82 -80
  1063. package/source/class/qx/ui/core/MExecutable.js +27 -52
  1064. package/source/class/qx/ui/core/MLayoutHandling.js +6 -14
  1065. package/source/class/qx/ui/core/MMovable.js +64 -80
  1066. package/source/class/qx/ui/core/MMultiSelectionHandling.js +68 -87
  1067. package/source/class/qx/ui/core/MNativeOverflow.js +16 -26
  1068. package/source/class/qx/ui/core/MPlacement.js +171 -170
  1069. package/source/class/qx/ui/core/MRemoteChildrenHandling.js +14 -27
  1070. package/source/class/qx/ui/core/MRemoteLayoutHandling.js +4 -7
  1071. package/source/class/qx/ui/core/MResizable.js +142 -175
  1072. package/source/class/qx/ui/core/MSingleSelectionHandling.js +40 -45
  1073. package/source/class/qx/ui/core/SingleSelectionManager.js +41 -60
  1074. package/source/class/qx/ui/core/Spacer.js +12 -22
  1075. package/source/class/qx/ui/core/Widget.js +688 -973
  1076. package/source/class/qx/ui/core/queue/Appearance.js +15 -24
  1077. package/source/class/qx/ui/core/queue/Dispose.js +7 -16
  1078. package/source/class/qx/ui/core/queue/Layout.js +44 -71
  1079. package/source/class/qx/ui/core/queue/Manager.js +140 -133
  1080. package/source/class/qx/ui/core/queue/Visibility.js +21 -39
  1081. package/source/class/qx/ui/core/queue/Widget.js +15 -26
  1082. package/source/class/qx/ui/core/scroll/AbstractScrollArea.js +124 -162
  1083. package/source/class/qx/ui/core/scroll/IScrollBar.js +13 -24
  1084. package/source/class/qx/ui/core/scroll/MRoll.js +14 -19
  1085. package/source/class/qx/ui/core/scroll/MScrollBarFactory.js +3 -6
  1086. package/source/class/qx/ui/core/scroll/MWheelHandling.js +10 -12
  1087. package/source/class/qx/ui/core/scroll/NativeScrollBar.js +103 -124
  1088. package/source/class/qx/ui/core/scroll/ScrollBar.js +89 -130
  1089. package/source/class/qx/ui/core/scroll/ScrollPane.js +95 -134
  1090. package/source/class/qx/ui/core/scroll/ScrollSlider.js +13 -19
  1091. package/source/class/qx/ui/core/scroll/__init__.js +4 -4
  1092. package/source/class/qx/ui/core/selection/Abstract.js +255 -456
  1093. package/source/class/qx/ui/core/selection/ScrollArea.js +35 -73
  1094. package/source/class/qx/ui/core/selection/Widget.js +57 -120
  1095. package/source/class/qx/ui/decoration/Abstract.js +11 -20
  1096. package/source/class/qx/ui/decoration/Decorator.js +56 -55
  1097. package/source/class/qx/ui/decoration/IDecorator.js +5 -11
  1098. package/source/class/qx/ui/decoration/MBackgroundColor.js +13 -20
  1099. package/source/class/qx/ui/decoration/MBackgroundImage.js +82 -77
  1100. package/source/class/qx/ui/decoration/MBorderImage.js +72 -94
  1101. package/source/class/qx/ui/decoration/MBorderRadius.js +35 -38
  1102. package/source/class/qx/ui/decoration/MBoxShadow.js +61 -55
  1103. package/source/class/qx/ui/decoration/MDoubleBorder.js +157 -155
  1104. package/source/class/qx/ui/decoration/MLinearBackgroundGradient.js +169 -89
  1105. package/source/class/qx/ui/decoration/MSingleBorder.js +138 -124
  1106. package/source/class/qx/ui/decoration/MTransition.js +46 -42
  1107. package/source/class/qx/ui/decoration/__init__.js +2 -2
  1108. package/source/class/qx/ui/embed/AbstractIframe.js +37 -55
  1109. package/source/class/qx/ui/embed/Canvas.js +34 -66
  1110. package/source/class/qx/ui/embed/Html.js +46 -70
  1111. package/source/class/qx/ui/embed/Iframe.js +178 -158
  1112. package/source/class/qx/ui/embed/ThemedIframe.js +91 -135
  1113. package/source/class/qx/ui/form/AbstractField.js +262 -303
  1114. package/source/class/qx/ui/form/AbstractSelectBox.js +98 -88
  1115. package/source/class/qx/ui/form/Button.js +38 -73
  1116. package/source/class/qx/ui/form/CheckBox.js +47 -45
  1117. package/source/class/qx/ui/form/CheckedList.js +41 -25
  1118. package/source/class/qx/ui/form/CheckedSelectBox.js +97 -62
  1119. package/source/class/qx/ui/form/ComboBox.js +129 -143
  1120. package/source/class/qx/ui/form/DateField.js +150 -176
  1121. package/source/class/qx/ui/form/Form.js +50 -69
  1122. package/source/class/qx/ui/form/HoverButton.js +37 -54
  1123. package/source/class/qx/ui/form/IArrayForm.js +8 -16
  1124. package/source/class/qx/ui/form/IBooleanForm.js +8 -16
  1125. package/source/class/qx/ui/form/IColorForm.js +8 -16
  1126. package/source/class/qx/ui/form/IDateForm.js +8 -16
  1127. package/source/class/qx/ui/form/IExecutable.js +7 -14
  1128. package/source/class/qx/ui/form/IField.js +7 -14
  1129. package/source/class/qx/ui/form/IForm.js +17 -32
  1130. package/source/class/qx/ui/form/IListItem.js +1 -4
  1131. package/source/class/qx/ui/form/IModel.js +7 -15
  1132. package/source/class/qx/ui/form/IModelForm.js +8 -16
  1133. package/source/class/qx/ui/form/IModelSelection.js +4 -8
  1134. package/source/class/qx/ui/form/INumberForm.js +8 -15
  1135. package/source/class/qx/ui/form/IRadioItem.js +8 -17
  1136. package/source/class/qx/ui/form/IRange.js +10 -20
  1137. package/source/class/qx/ui/form/IStringForm.js +8 -16
  1138. package/source/class/qx/ui/form/List.js +85 -122
  1139. package/source/class/qx/ui/form/ListItem.js +21 -38
  1140. package/source/class/qx/ui/form/MForm.js +35 -41
  1141. package/source/class/qx/ui/form/MModelProperty.js +9 -14
  1142. package/source/class/qx/ui/form/MModelSelection.js +30 -32
  1143. package/source/class/qx/ui/form/MenuButton.js +68 -73
  1144. package/source/class/qx/ui/form/PasswordField.js +4 -6
  1145. package/source/class/qx/ui/form/RadioButton.js +43 -72
  1146. package/source/class/qx/ui/form/RadioButtonGroup.js +70 -82
  1147. package/source/class/qx/ui/form/RadioGroup.js +110 -126
  1148. package/source/class/qx/ui/form/RepeatButton.js +57 -106
  1149. package/source/class/qx/ui/form/Resetter.js +19 -29
  1150. package/source/class/qx/ui/form/SelectBox.js +80 -101
  1151. package/source/class/qx/ui/form/Slider.js +216 -268
  1152. package/source/class/qx/ui/form/Spinner.js +173 -217
  1153. package/source/class/qx/ui/form/SplitButton.js +76 -115
  1154. package/source/class/qx/ui/form/Tag.js +7 -8
  1155. package/source/class/qx/ui/form/TextArea.js +147 -153
  1156. package/source/class/qx/ui/form/TextField.js +37 -46
  1157. package/source/class/qx/ui/form/ToggleButton.js +62 -90
  1158. package/source/class/qx/ui/form/VirtualComboBox.js +73 -113
  1159. package/source/class/qx/ui/form/VirtualSelectBox.js +264 -274
  1160. package/source/class/qx/ui/form/core/AbstractVirtualBox.js +117 -157
  1161. package/source/class/qx/ui/form/core/VirtualDropDownList.js +101 -144
  1162. package/source/class/qx/ui/form/renderer/AbstractRenderer.js +48 -55
  1163. package/source/class/qx/ui/form/renderer/Double.js +25 -34
  1164. package/source/class/qx/ui/form/renderer/IFormRenderer.js +4 -8
  1165. package/source/class/qx/ui/form/renderer/Single.js +25 -35
  1166. package/source/class/qx/ui/form/renderer/SinglePlaceholder.js +12 -11
  1167. package/source/class/qx/ui/form/renderer/__init__.js +5 -5
  1168. package/source/class/qx/ui/form/validation/AsyncValidator.js +13 -19
  1169. package/source/class/qx/ui/form/validation/Manager.js +74 -108
  1170. package/source/class/qx/ui/form/validation/__init__.js +6 -6
  1171. package/source/class/qx/ui/groupbox/CheckGroupBox.js +30 -47
  1172. package/source/class/qx/ui/groupbox/GroupBox.js +36 -75
  1173. package/source/class/qx/ui/groupbox/RadioGroupBox.js +29 -59
  1174. package/source/class/qx/ui/groupbox/__init__.js +3 -3
  1175. package/source/class/qx/ui/indicator/ProgressBar.js +29 -46
  1176. package/source/class/qx/ui/layout/Abstract.js +28 -53
  1177. package/source/class/qx/ui/layout/Atom.js +95 -111
  1178. package/source/class/qx/ui/layout/Basic.js +29 -30
  1179. package/source/class/qx/ui/layout/Canvas.js +62 -99
  1180. package/source/class/qx/ui/layout/Dock.js +266 -250
  1181. package/source/class/qx/ui/layout/Flow.js +50 -76
  1182. package/source/class/qx/ui/layout/Grid.js +268 -343
  1183. package/source/class/qx/ui/layout/Grow.js +26 -32
  1184. package/source/class/qx/ui/layout/HBox.js +137 -153
  1185. package/source/class/qx/ui/layout/LineSizeIterator.js +19 -28
  1186. package/source/class/qx/ui/layout/Util.js +91 -120
  1187. package/source/class/qx/ui/layout/VBox.js +125 -147
  1188. package/source/class/qx/ui/list/List.js +148 -262
  1189. package/source/class/qx/ui/list/core/IListDelegate.js +13 -26
  1190. package/source/class/qx/ui/list/core/MWidgetController.js +51 -78
  1191. package/source/class/qx/ui/list/provider/IListProvider.js +15 -28
  1192. package/source/class/qx/ui/list/provider/WidgetProvider.js +52 -84
  1193. package/source/class/qx/ui/menu/AbstractButton.js +141 -122
  1194. package/source/class/qx/ui/menu/Button.js +14 -25
  1195. package/source/class/qx/ui/menu/ButtonLayout.js +49 -37
  1196. package/source/class/qx/ui/menu/CheckBox.js +28 -45
  1197. package/source/class/qx/ui/menu/Layout.js +45 -51
  1198. package/source/class/qx/ui/menu/Manager.js +132 -208
  1199. package/source/class/qx/ui/menu/Menu.js +227 -250
  1200. package/source/class/qx/ui/menu/MenuSlideBar.js +13 -20
  1201. package/source/class/qx/ui/menu/RadioButton.js +38 -51
  1202. package/source/class/qx/ui/menu/Separator.js +9 -16
  1203. package/source/class/qx/ui/menubar/Button.js +22 -67
  1204. package/source/class/qx/ui/menubar/MenuBar.js +17 -9
  1205. package/source/class/qx/ui/mobile/__init__.js +5 -5
  1206. package/source/class/qx/ui/mobile/basic/Atom.js +79 -101
  1207. package/source/class/qx/ui/mobile/basic/Image.js +80 -86
  1208. package/source/class/qx/ui/mobile/basic/Label.js +38 -54
  1209. package/source/class/qx/ui/mobile/container/Carousel.js +281 -188
  1210. package/source/class/qx/ui/mobile/container/Collapsible.js +57 -77
  1211. package/source/class/qx/ui/mobile/container/Composite.js +9 -13
  1212. package/source/class/qx/ui/mobile/container/Drawer.js +167 -164
  1213. package/source/class/qx/ui/mobile/container/INavigation.js +6 -10
  1214. package/source/class/qx/ui/mobile/container/IScrollDelegate.js +4 -6
  1215. package/source/class/qx/ui/mobile/container/MIScroll.js +108 -100
  1216. package/source/class/qx/ui/mobile/container/MNativeScroll.js +118 -102
  1217. package/source/class/qx/ui/mobile/container/MScrollHandling.js +8 -7
  1218. package/source/class/qx/ui/mobile/container/Navigation.js +46 -65
  1219. package/source/class/qx/ui/mobile/container/Scroll.js +140 -151
  1220. package/source/class/qx/ui/mobile/control/Picker.js +125 -112
  1221. package/source/class/qx/ui/mobile/core/Blocker.js +62 -71
  1222. package/source/class/qx/ui/mobile/core/DomUpdatedHandler.js +24 -60
  1223. package/source/class/qx/ui/mobile/core/EventHandler.js +158 -138
  1224. package/source/class/qx/ui/mobile/core/MChildrenHandling.js +14 -30
  1225. package/source/class/qx/ui/mobile/core/MLayoutHandling.js +6 -14
  1226. package/source/class/qx/ui/mobile/core/MResize.js +16 -30
  1227. package/source/class/qx/ui/mobile/core/Root.js +90 -80
  1228. package/source/class/qx/ui/mobile/core/Widget.js +351 -479
  1229. package/source/class/qx/ui/mobile/dialog/BusyIndicator.js +31 -46
  1230. package/source/class/qx/ui/mobile/dialog/Manager.js +127 -89
  1231. package/source/class/qx/ui/mobile/dialog/Menu.js +111 -122
  1232. package/source/class/qx/ui/mobile/dialog/Popup.js +202 -194
  1233. package/source/class/qx/ui/mobile/embed/Canvas.js +12 -25
  1234. package/source/class/qx/ui/mobile/embed/Html.js +13 -27
  1235. package/source/class/qx/ui/mobile/form/Button.js +12 -18
  1236. package/source/class/qx/ui/mobile/form/CheckBox.js +20 -35
  1237. package/source/class/qx/ui/mobile/form/Form.js +31 -51
  1238. package/source/class/qx/ui/mobile/form/Group.js +18 -30
  1239. package/source/class/qx/ui/mobile/form/Input.js +30 -35
  1240. package/source/class/qx/ui/mobile/form/Label.js +76 -79
  1241. package/source/class/qx/ui/mobile/form/MState.js +20 -27
  1242. package/source/class/qx/ui/mobile/form/MText.js +27 -47
  1243. package/source/class/qx/ui/mobile/form/MValue.js +66 -94
  1244. package/source/class/qx/ui/mobile/form/NumberField.js +30 -47
  1245. package/source/class/qx/ui/mobile/form/PasswordField.js +8 -14
  1246. package/source/class/qx/ui/mobile/form/RadioButton.js +25 -46
  1247. package/source/class/qx/ui/mobile/form/RadioGroup.js +2 -4
  1248. package/source/class/qx/ui/mobile/form/Row.js +14 -29
  1249. package/source/class/qx/ui/mobile/form/SelectBox.js +77 -104
  1250. package/source/class/qx/ui/mobile/form/Slider.js +116 -144
  1251. package/source/class/qx/ui/mobile/form/TextArea.js +26 -39
  1252. package/source/class/qx/ui/mobile/form/TextField.js +18 -28
  1253. package/source/class/qx/ui/mobile/form/Title.js +11 -19
  1254. package/source/class/qx/ui/mobile/form/ToggleButton.js +35 -58
  1255. package/source/class/qx/ui/mobile/form/__init__.js +1 -1
  1256. package/source/class/qx/ui/mobile/form/renderer/AbstractRenderer.js +24 -31
  1257. package/source/class/qx/ui/mobile/form/renderer/Single.js +59 -85
  1258. package/source/class/qx/ui/mobile/form/renderer/SinglePlaceholder.js +8 -16
  1259. package/source/class/qx/ui/mobile/layout/Abstract.js +48 -85
  1260. package/source/class/qx/ui/mobile/layout/AbstractBox.js +93 -125
  1261. package/source/class/qx/ui/mobile/layout/Card.js +133 -116
  1262. package/source/class/qx/ui/mobile/layout/CardAnimation.js +95 -72
  1263. package/source/class/qx/ui/mobile/layout/HBox.js +9 -12
  1264. package/source/class/qx/ui/mobile/layout/VBox.js +9 -12
  1265. package/source/class/qx/ui/mobile/list/IListDelegate.js +5 -9
  1266. package/source/class/qx/ui/mobile/list/List.js +172 -183
  1267. package/source/class/qx/ui/mobile/list/provider/Provider.js +58 -65
  1268. package/source/class/qx/ui/mobile/list/renderer/Abstract.js +54 -82
  1269. package/source/class/qx/ui/mobile/list/renderer/Default.js +39 -55
  1270. package/source/class/qx/ui/mobile/list/renderer/group/Abstract.js +20 -33
  1271. package/source/class/qx/ui/mobile/list/renderer/group/Default.js +29 -45
  1272. package/source/class/qx/ui/mobile/navigationbar/BackButton.js +11 -15
  1273. package/source/class/qx/ui/mobile/navigationbar/Button.js +11 -15
  1274. package/source/class/qx/ui/mobile/navigationbar/NavigationBar.js +23 -29
  1275. package/source/class/qx/ui/mobile/navigationbar/Title.js +12 -20
  1276. package/source/class/qx/ui/mobile/page/Manager.js +195 -169
  1277. package/source/class/qx/ui/mobile/page/NavigationPage.js +132 -196
  1278. package/source/class/qx/ui/mobile/page/Page.js +109 -148
  1279. package/source/class/qx/ui/mobile/tabbar/TabBar.js +41 -62
  1280. package/source/class/qx/ui/mobile/tabbar/TabButton.js +19 -28
  1281. package/source/class/qx/ui/mobile/toolbar/Button.js +7 -11
  1282. package/source/class/qx/ui/mobile/toolbar/Separator.js +11 -15
  1283. package/source/class/qx/ui/mobile/toolbar/ToolBar.js +30 -39
  1284. package/source/class/qx/ui/popup/Manager.js +41 -53
  1285. package/source/class/qx/ui/popup/Popup.js +22 -47
  1286. package/source/class/qx/ui/popup/__init__.js +32 -32
  1287. package/source/class/qx/ui/progressive/Progressive.js +96 -137
  1288. package/source/class/qx/ui/progressive/State.js +12 -19
  1289. package/source/class/qx/ui/progressive/headfoot/Abstract.js +10 -15
  1290. package/source/class/qx/ui/progressive/headfoot/Null.js +4 -7
  1291. package/source/class/qx/ui/progressive/headfoot/Progress.js +67 -69
  1292. package/source/class/qx/ui/progressive/headfoot/TableHeading.js +42 -54
  1293. package/source/class/qx/ui/progressive/model/Abstract.js +8 -15
  1294. package/source/class/qx/ui/progressive/model/Default.js +17 -29
  1295. package/source/class/qx/ui/progressive/renderer/Abstract.js +6 -11
  1296. package/source/class/qx/ui/progressive/renderer/FunctionCaller.js +4 -7
  1297. package/source/class/qx/ui/progressive/renderer/table/Row.js +215 -242
  1298. package/source/class/qx/ui/progressive/renderer/table/Widths.js +32 -47
  1299. package/source/class/qx/ui/progressive/renderer/table/cell/Abstract.js +17 -24
  1300. package/source/class/qx/ui/progressive/renderer/table/cell/Boolean.js +68 -79
  1301. package/source/class/qx/ui/progressive/renderer/table/cell/Conditional.js +146 -199
  1302. package/source/class/qx/ui/progressive/renderer/table/cell/Default.js +14 -32
  1303. package/source/class/qx/ui/progressive/renderer/table/cell/Html.js +2 -3
  1304. package/source/class/qx/ui/progressive/renderer/table/cell/Icon.js +38 -53
  1305. package/source/class/qx/ui/progressive/renderer/table/cell/Image.js +20 -42
  1306. package/source/class/qx/ui/progressive/renderer/table/cell/String.js +6 -12
  1307. package/source/class/qx/ui/progressive/structure/Abstract.js +14 -26
  1308. package/source/class/qx/ui/progressive/structure/Default.js +20 -40
  1309. package/source/class/qx/ui/root/Abstract.js +73 -90
  1310. package/source/class/qx/ui/root/Application.js +57 -61
  1311. package/source/class/qx/ui/root/Inline.js +78 -64
  1312. package/source/class/qx/ui/root/Page.js +25 -46
  1313. package/source/class/qx/ui/splitpane/Blocker.js +23 -30
  1314. package/source/class/qx/ui/splitpane/HLayout.js +53 -49
  1315. package/source/class/qx/ui/splitpane/Pane.js +115 -150
  1316. package/source/class/qx/ui/splitpane/Slider.js +9 -15
  1317. package/source/class/qx/ui/splitpane/Splitter.js +27 -46
  1318. package/source/class/qx/ui/splitpane/VLayout.js +53 -49
  1319. package/source/class/qx/ui/style/Stylesheet.js +12 -19
  1320. package/source/class/qx/ui/table/ICellEditorFactory.js +4 -8
  1321. package/source/class/qx/ui/table/ICellRenderer.js +3 -7
  1322. package/source/class/qx/ui/table/IColumnMenuButton.js +6 -11
  1323. package/source/class/qx/ui/table/IColumnMenuItem.js +5 -8
  1324. package/source/class/qx/ui/table/IHeaderRenderer.js +4 -8
  1325. package/source/class/qx/ui/table/IRowRenderer.js +6 -12
  1326. package/source/class/qx/ui/table/ITableModel.js +23 -41
  1327. package/source/class/qx/ui/table/MTableContextMenu.js +25 -28
  1328. package/source/class/qx/ui/table/Table.js +573 -743
  1329. package/source/class/qx/ui/table/celleditor/AbstractField.js +16 -26
  1330. package/source/class/qx/ui/table/celleditor/CheckBox.js +15 -16
  1331. package/source/class/qx/ui/table/celleditor/ComboBox.js +24 -34
  1332. package/source/class/qx/ui/table/celleditor/Dynamic.js +25 -32
  1333. package/source/class/qx/ui/table/celleditor/PasswordField.js +4 -8
  1334. package/source/class/qx/ui/table/celleditor/SelectBox.js +29 -38
  1335. package/source/class/qx/ui/table/celleditor/TextField.js +9 -14
  1336. package/source/class/qx/ui/table/cellrenderer/Abstract.js +79 -72
  1337. package/source/class/qx/ui/table/cellrenderer/AbstractImage.js +71 -86
  1338. package/source/class/qx/ui/table/cellrenderer/Boolean.js +36 -50
  1339. package/source/class/qx/ui/table/cellrenderer/Conditional.js +74 -63
  1340. package/source/class/qx/ui/table/cellrenderer/Date.js +12 -22
  1341. package/source/class/qx/ui/table/cellrenderer/Debug.js +9 -9
  1342. package/source/class/qx/ui/table/cellrenderer/Default.js +30 -52
  1343. package/source/class/qx/ui/table/cellrenderer/Dynamic.js +13 -24
  1344. package/source/class/qx/ui/table/cellrenderer/Html.js +6 -8
  1345. package/source/class/qx/ui/table/cellrenderer/Image.js +13 -26
  1346. package/source/class/qx/ui/table/cellrenderer/Number.js +13 -24
  1347. package/source/class/qx/ui/table/cellrenderer/Password.js +8 -11
  1348. package/source/class/qx/ui/table/cellrenderer/Replace.js +27 -42
  1349. package/source/class/qx/ui/table/cellrenderer/String.js +5 -7
  1350. package/source/class/qx/ui/table/columnmenu/Button.js +19 -29
  1351. package/source/class/qx/ui/table/columnmenu/MenuItem.js +11 -19
  1352. package/source/class/qx/ui/table/columnmenu/__init__.js +4 -4
  1353. package/source/class/qx/ui/table/columnmenu/grid/__init__.js +4 -4
  1354. package/source/class/qx/ui/table/columnmenu/simple/__init__.js +4 -4
  1355. package/source/class/qx/ui/table/columnmodel/Basic.js +193 -215
  1356. package/source/class/qx/ui/table/columnmodel/Resize.js +65 -111
  1357. package/source/class/qx/ui/table/columnmodel/resizebehavior/Abstract.js +17 -24
  1358. package/source/class/qx/ui/table/columnmodel/resizebehavior/Default.js +66 -117
  1359. package/source/class/qx/ui/table/headerrenderer/Default.js +25 -46
  1360. package/source/class/qx/ui/table/headerrenderer/HeaderCell.js +39 -51
  1361. package/source/class/qx/ui/table/headerrenderer/Icon.js +11 -27
  1362. package/source/class/qx/ui/table/model/Abstract.js +52 -62
  1363. package/source/class/qx/ui/table/model/Filtered.js +121 -153
  1364. package/source/class/qx/ui/table/model/Remote.js +166 -271
  1365. package/source/class/qx/ui/table/model/Simple.js +215 -250
  1366. package/source/class/qx/ui/table/pane/CellEvent.js +25 -32
  1367. package/source/class/qx/ui/table/pane/Clipper.js +8 -12
  1368. package/source/class/qx/ui/table/pane/FocusIndicator.js +42 -48
  1369. package/source/class/qx/ui/table/pane/Header.js +48 -86
  1370. package/source/class/qx/ui/table/pane/Model.js +80 -97
  1371. package/source/class/qx/ui/table/pane/Pane.js +129 -189
  1372. package/source/class/qx/ui/table/pane/Scroller.js +542 -663
  1373. package/source/class/qx/ui/table/rowrenderer/Default.js +76 -87
  1374. package/source/class/qx/ui/table/selection/Manager.js +23 -57
  1375. package/source/class/qx/ui/table/selection/Model.js +89 -179
  1376. package/source/class/qx/ui/tabview/Page.js +69 -74
  1377. package/source/class/qx/ui/tabview/TabButton.js +45 -72
  1378. package/source/class/qx/ui/tabview/TabView.js +96 -140
  1379. package/source/class/qx/ui/toolbar/Button.js +13 -43
  1380. package/source/class/qx/ui/toolbar/CheckBox.js +12 -43
  1381. package/source/class/qx/ui/toolbar/MenuButton.js +18 -34
  1382. package/source/class/qx/ui/toolbar/Part.js +42 -64
  1383. package/source/class/qx/ui/toolbar/PartContainer.js +19 -28
  1384. package/source/class/qx/ui/toolbar/RadioButton.js +29 -15
  1385. package/source/class/qx/ui/toolbar/Separator.js +15 -25
  1386. package/source/class/qx/ui/toolbar/SplitButton.js +18 -55
  1387. package/source/class/qx/ui/toolbar/ToolBar.js +185 -232
  1388. package/source/class/qx/ui/tooltip/Manager.js +125 -123
  1389. package/source/class/qx/ui/tooltip/ToolTip.js +49 -79
  1390. package/source/class/qx/ui/tooltip/__init__.js +23 -23
  1391. package/source/class/qx/ui/tree/Tree.js +95 -148
  1392. package/source/class/qx/ui/tree/TreeFile.js +8 -15
  1393. package/source/class/qx/ui/tree/TreeFolder.js +8 -15
  1394. package/source/class/qx/ui/tree/VirtualTree.js +207 -333
  1395. package/source/class/qx/ui/tree/VirtualTreeItem.js +30 -45
  1396. package/source/class/qx/ui/tree/__init__.js +50 -50
  1397. package/source/class/qx/ui/tree/core/AbstractItem.js +98 -152
  1398. package/source/class/qx/ui/tree/core/AbstractTreeItem.js +83 -137
  1399. package/source/class/qx/ui/tree/core/FolderOpenButton.js +15 -34
  1400. package/source/class/qx/ui/tree/core/IVirtualTree.js +13 -33
  1401. package/source/class/qx/ui/tree/core/IVirtualTreeDelegate.js +9 -16
  1402. package/source/class/qx/ui/tree/core/MWidgetController.js +58 -69
  1403. package/source/class/qx/ui/tree/core/OpenCloseController.js +29 -35
  1404. package/source/class/qx/ui/tree/core/Util.js +12 -16
  1405. package/source/class/qx/ui/tree/provider/IVirtualTreeProvider.js +10 -23
  1406. package/source/class/qx/ui/tree/provider/WidgetProvider.js +39 -67
  1407. package/source/class/qx/ui/tree/selection/SelectionManager.js +27 -41
  1408. package/source/class/qx/ui/treevirtual/DefaultDataCellRenderer.js +2 -3
  1409. package/source/class/qx/ui/treevirtual/MFamily.js +26 -63
  1410. package/source/class/qx/ui/treevirtual/MNode.js +43 -103
  1411. package/source/class/qx/ui/treevirtual/MTreePrimitive.js +41 -52
  1412. package/source/class/qx/ui/treevirtual/SelectionManager.js +44 -58
  1413. package/source/class/qx/ui/treevirtual/SimpleTreeDataCellRenderer.js +172 -229
  1414. package/source/class/qx/ui/treevirtual/SimpleTreeDataModel.js +256 -367
  1415. package/source/class/qx/ui/treevirtual/SimpleTreeDataRowRenderer.js +8 -18
  1416. package/source/class/qx/ui/treevirtual/TreeVirtual.js +155 -250
  1417. package/source/class/qx/ui/treevirtual/celleditor/NodeEditor.js +10 -16
  1418. package/source/class/qx/ui/treevirtual/pane/Scroller.js +14 -11
  1419. package/source/class/qx/ui/virtual/__init__.js +4 -4
  1420. package/source/class/qx/ui/virtual/behavior/Prefetch.js +71 -86
  1421. package/source/class/qx/ui/virtual/cell/Abstract.js +18 -27
  1422. package/source/class/qx/ui/virtual/cell/AbstractImage.js +42 -51
  1423. package/source/class/qx/ui/virtual/cell/AbstractWidget.js +25 -49
  1424. package/source/class/qx/ui/virtual/cell/Boolean.js +31 -44
  1425. package/source/class/qx/ui/virtual/cell/Cell.js +143 -183
  1426. package/source/class/qx/ui/virtual/cell/CellStylesheet.js +31 -38
  1427. package/source/class/qx/ui/virtual/cell/Date.js +15 -24
  1428. package/source/class/qx/ui/virtual/cell/Html.js +9 -20
  1429. package/source/class/qx/ui/virtual/cell/ICell.js +4 -6
  1430. package/source/class/qx/ui/virtual/cell/IWidgetCell.js +7 -12
  1431. package/source/class/qx/ui/virtual/cell/IWidgetCellDelegate.js +4 -6
  1432. package/source/class/qx/ui/virtual/cell/Image.js +8 -14
  1433. package/source/class/qx/ui/virtual/cell/Number.js +14 -23
  1434. package/source/class/qx/ui/virtual/cell/String.js +11 -20
  1435. package/source/class/qx/ui/virtual/cell/WidgetCell.js +13 -16
  1436. package/source/class/qx/ui/virtual/cell/__init__.js +4 -4
  1437. package/source/class/qx/ui/virtual/core/Axis.js +75 -103
  1438. package/source/class/qx/ui/virtual/core/CellEvent.js +23 -31
  1439. package/source/class/qx/ui/virtual/core/IHtmlCellProvider.js +4 -6
  1440. package/source/class/qx/ui/virtual/core/ILayer.js +5 -15
  1441. package/source/class/qx/ui/virtual/core/IWidgetCellProvider.js +5 -7
  1442. package/source/class/qx/ui/virtual/core/Pane.js +199 -242
  1443. package/source/class/qx/ui/virtual/core/Scroller.js +25 -43
  1444. package/source/class/qx/ui/virtual/layer/Abstract.js +44 -83
  1445. package/source/class/qx/ui/virtual/layer/AbstractBackground.js +47 -68
  1446. package/source/class/qx/ui/virtual/layer/CellSpanManager.js +74 -96
  1447. package/source/class/qx/ui/virtual/layer/Column.js +26 -36
  1448. package/source/class/qx/ui/virtual/layer/GridLines.js +43 -70
  1449. package/source/class/qx/ui/virtual/layer/HtmlCell.js +34 -32
  1450. package/source/class/qx/ui/virtual/layer/HtmlCellSpan.js +54 -56
  1451. package/source/class/qx/ui/virtual/layer/Row.js +28 -36
  1452. package/source/class/qx/ui/virtual/layer/WidgetCell.js +87 -123
  1453. package/source/class/qx/ui/virtual/layer/WidgetCellSpan.js +123 -124
  1454. package/source/class/qx/ui/virtual/selection/Abstract.js +26 -54
  1455. package/source/class/qx/ui/virtual/selection/CellLines.js +11 -21
  1456. package/source/class/qx/ui/virtual/selection/CellRectangle.js +45 -73
  1457. package/source/class/qx/ui/virtual/selection/Column.js +16 -35
  1458. package/source/class/qx/ui/virtual/selection/ISelectionDelegate.js +5 -9
  1459. package/source/class/qx/ui/virtual/selection/MModel.js +84 -122
  1460. package/source/class/qx/ui/virtual/selection/Row.js +29 -61
  1461. package/source/class/qx/ui/website/Accordion.js +39 -42
  1462. package/source/class/qx/ui/website/Button.js +17 -25
  1463. package/source/class/qx/ui/website/Calendar.js +243 -172
  1464. package/source/class/qx/ui/website/Carousel.js +169 -155
  1465. package/source/class/qx/ui/website/DatePicker.js +99 -85
  1466. package/source/class/qx/ui/website/Rating.js +35 -53
  1467. package/source/class/qx/ui/website/Slider.js +174 -153
  1468. package/source/class/qx/ui/website/Table.js +482 -456
  1469. package/source/class/qx/ui/website/Tabs.js +225 -180
  1470. package/source/class/qx/ui/website/Widget.js +39 -52
  1471. package/source/class/qx/ui/window/Desktop.js +14 -12
  1472. package/source/class/qx/ui/window/IDesktop.js +8 -10
  1473. package/source/class/qx/ui/window/IWindowManager.js +7 -9
  1474. package/source/class/qx/ui/window/MDesktop.js +34 -62
  1475. package/source/class/qx/ui/window/Manager.js +31 -57
  1476. package/source/class/qx/ui/window/Window.js +256 -349
  1477. package/source/class/qx/util/AliasManager.js +23 -42
  1478. package/source/class/qx/util/Animation.js +248 -191
  1479. package/source/class/qx/util/Base64.js +144 -89
  1480. package/source/class/qx/util/ColorUtil.js +253 -287
  1481. package/source/class/qx/util/DeferredCall.js +21 -30
  1482. package/source/class/qx/util/DeferredCallManager.js +23 -44
  1483. package/source/class/qx/util/Delegate.js +4 -10
  1484. package/source/class/qx/util/DisposeUtil.js +76 -70
  1485. package/source/class/qx/util/DynamicScriptLoader.js +83 -66
  1486. package/source/class/qx/util/EditDistance.js +64 -58
  1487. package/source/class/qx/util/ExtendedColor.js +157 -163
  1488. package/source/class/qx/util/Function.js +8 -8
  1489. package/source/class/qx/util/LibraryManager.js +11 -18
  1490. package/source/class/qx/util/OOUtil.js +17 -36
  1491. package/source/class/qx/util/ObjectPool.js +19 -45
  1492. package/source/class/qx/util/Permutation.js +9 -16
  1493. package/source/class/qx/util/PropertyUtil.js +58 -70
  1494. package/source/class/qx/util/Request.js +27 -16
  1495. package/source/class/qx/util/ResourceManager.js +103 -104
  1496. package/source/class/qx/util/ResponseParser.js +14 -21
  1497. package/source/class/qx/util/RingBuffer.js +46 -48
  1498. package/source/class/qx/util/Serializer.js +103 -68
  1499. package/source/class/qx/util/StringBuilder.js +11 -22
  1500. package/source/class/qx/util/StringEscape.js +15 -29
  1501. package/source/class/qx/util/StringSplit.js +18 -21
  1502. package/source/class/qx/util/TimerManager.js +61 -70
  1503. package/source/class/qx/util/Uri.js +42 -30
  1504. package/source/class/qx/util/Uuid.js +50 -35
  1505. package/source/class/qx/util/Validate.js +88 -73
  1506. package/source/class/qx/util/ValueManager.js +17 -29
  1507. package/source/class/qx/util/Wheel.js +22 -16
  1508. package/source/class/qx/util/format/DateFormat.js +853 -763
  1509. package/source/class/qx/util/format/IFormat.js +4 -8
  1510. package/source/class/qx/util/format/NumberFormat.js +84 -91
  1511. package/source/class/qx/util/fsm/FiniteStateMachine.js +323 -382
  1512. package/source/class/qx/util/fsm/State.js +210 -249
  1513. package/source/class/qx/util/fsm/Transition.js +138 -160
  1514. package/source/class/qx/util/placement/AbstractAxis.js +12 -14
  1515. package/source/class/qx/util/placement/BestFitAxis.js +5 -8
  1516. package/source/class/qx/util/placement/DirectAxis.js +5 -7
  1517. package/source/class/qx/util/placement/KeepAlignAxis.js +8 -14
  1518. package/source/class/qx/util/placement/Placement.js +39 -56
  1519. package/source/class/qx/util/placement/__init__.js +4 -4
  1520. package/source/class/qx/xml/Document.js +21 -34
  1521. package/source/class/qx/xml/Element.js +90 -73
  1522. package/source/class/qx/xml/String.js +15 -21
  1523. package/source/class/qxWeb.js +104 -69
  1524. package/source/resource/qx/decoration/Indigo/font/JosefinSlab-SemiBold.ttf +0 -0
  1525. package/source/resource/qx/decoration/Indigo/font/SIL Open Font License 1.1.txt +0 -0
  1526. package/source/resource/qx/iconfont/MaterialIcons/fetch-fonts.sh +0 -0
  1527. package/source/resource/qx/mobile/js/iscroll.js +1328 -982
  1528. package/source/resource/qx/mobile/js/iscroll.min.js +1081 -1
  1529. package/source/resource/qx/mobile/scss/common/_gradients.scss +3 -1
  1530. package/source/resource/qx/mobile/scss/theme/indigo/_styles.scss +1 -1
  1531. package/source/resource/qx/mobile/scss/ui/_carousel.scss +2 -2
  1532. package/source/resource/qx/mobile/scss/ui/_checkbox.scss +3 -3
  1533. package/source/resource/qx/mobile/scss/ui/_collapsible.scss +2 -2
  1534. package/source/resource/qx/mobile/scss/ui/_picker.scss +4 -4
  1535. package/source/resource/qx/mobile/scss/ui/_radiobutton.scss +4 -4
  1536. package/source/resource/qx/mobile/scss/ui/_slider.scss +7 -7
  1537. package/source/resource/qx/scss/_gradients.scss +3 -1
  1538. package/source/resource/qx/scss/_mixins.scss +4 -2
  1539. package/source/resource/qx/test/dynamicscriptloader/first.js +1 -1
  1540. package/source/resource/qx/test/dynamicscriptloader/second.js +1 -1
  1541. package/source/resource/qx/test/dynamicscriptloader/third.js +1 -1
  1542. package/source/resource/qx/test/script.js +1 -1
  1543. package/source/resource/qx/test/webworker.js +2 -2
  1544. package/source/resource/qx/tool/bin/build-devtools +0 -0
  1545. package/source/resource/qx/tool/bin/build-website +0 -0
  1546. package/source/resource/qx/tool/bin/download-assets +0 -0
  1547. package/source/resource/qx/tool/cli/templates/loader/loader-node.tmpl.js +3 -1
  1548. package/source/resource/qx/tool/cli/templates/skeleton/mobile/source/theme/custom/scss/_styles.scss +1 -1
  1549. package/source/resource/qx/tool/cli/templates/template_vars.js +1 -1
  1550. package/source/resource/qx/tool/loadsass.js +16 -21
  1551. package/source/resource/qx/tool/schema/Manifest-1-0-0.json +1 -2
  1552. package/source/resource/qx/tool/schema/Manifest-2-0-0.json +1 -2
  1553. package/source/resource/qx/tool/schema/compile-1-0-0.json +16 -20
  1554. package/source/resource/qx/tool/website/build/assets/bluebird.min.js +4593 -9
  1555. package/source/resource/qx/tool/website/build/assets/buttons.js +391 -1
  1556. package/source/resource/qx/tool/website/build/assets/fontawesome-all.js +8963 -1
  1557. package/source/resource/qx/tool/website/build/assets/jquery.js +5452 -3
  1558. package/source/resource/qx/tool/website/build/diagnostics/dependson.js +31 -31
  1559. package/source/resource/qx/tool/website/build/diagnostics/requiredby.js +32 -36
  1560. package/source/resource/qx/tool/website/build/scripts/serve.js +87 -66
  1561. package/source/resource/qx/tool/website/src/assets/bluebird.min.js +4593 -9
  1562. package/source/resource/qx/tool/website/src/assets/buttons.js +391 -1
  1563. package/source/resource/qx/tool/website/src/assets/fontawesome-all.js +8963 -1
  1564. package/source/resource/qx/tool/website/src/assets/jquery.js +5452 -3
  1565. package/source/resource/qx/tool/website/src/diagnostics/dependson.js +31 -31
  1566. package/source/resource/qx/tool/website/src/diagnostics/requiredby.js +32 -36
  1567. package/source/resource/qx/tool/website/src/scripts/serve.js +87 -66
  1568. package/source/resource/qx/website/scss/ui/_carousel.scss +2 -2
  1569. package/source/translation/hr.po +297 -0
  1570. package/lib/resource/qx/static/blank.gif +0 -0
  1571. package/lib/resource/qx/tool/website/.gitignore +0 -2
  1572. package/source/class/qx/io/remote/Exchange.js +0 -1063
  1573. package/source/class/qx/io/remote/Request.js +0 -1021
  1574. package/source/class/qx/io/remote/RequestQueue.js +0 -521
  1575. package/source/class/qx/io/remote/Response.js +0 -137
  1576. package/source/class/qx/io/remote/Rpc.js +0 -1075
  1577. package/source/class/qx/io/remote/RpcError.js +0 -198
  1578. package/source/class/qx/io/remote/__init__.js +0 -88
  1579. package/source/class/qx/io/remote/transport/Abstract.js +0 -513
  1580. package/source/class/qx/io/remote/transport/Iframe.js +0 -652
  1581. package/source/class/qx/io/remote/transport/Script.js +0 -475
  1582. package/source/class/qx/io/remote/transport/XmlHttp.js +0 -1019
  1583. package/source/class/qx/io/remote/transport/__init__.js +0 -3
  1584. package/source/class/qx/io/request/auth/.gitignore +0 -0
  1585. package/source/class/qx/test/bom/client/.gitignore +0 -0
  1586. package/source/class/qx/test/io/remote/AbstractRequest.js +0 -150
  1587. package/source/class/qx/test/io/remote/RequestIframe.js +0 -105
  1588. package/source/class/qx/test/io/remote/RequestXhr.js +0 -151
  1589. package/source/class/qx/test/io/remote/Rpc.js +0 -205
  1590. package/source/class/qx/test/io/remote/__init__.js +0 -4
  1591. package/source/class/qx/test/io/remote/transport/Iframe.js +0 -67
  1592. package/source/class/qx/test/io/remote/transport/XmlHttp.js +0 -133
  1593. package/source/class/qx/test/io/remote/transport/__init__.js +0 -4
  1594. package/source/class/qx/test/ui/control/.gitignore +0 -0
  1595. package/source/resource/qx/decoration/Modern/treevirtual/.gitignore +0 -0
  1596. package/source/resource/qx/mobile/css/.gitignore +0 -3
  1597. package/source/resource/qx/tool/website/.gitignore +0 -2
  1598. package/source/resource/qx/website/.gitignore +0 -1
  1599. package/source/resource/qx/website/scss/.gitignore +0 -1
@@ -53,10 +53,8 @@
53
53
  * @asset(qx/static/empty.pdf)
54
54
  * @ignore($.browser)
55
55
  */
56
- qx.Bootstrap.define("qx.bom.client.Pdfjs",
57
- {
58
- statics:
59
- {
56
+ qx.Bootstrap.define("qx.bom.client.Pdfjs", {
57
+ statics: {
60
58
  /**
61
59
  * Checks if PDF.js is available.
62
60
  *
@@ -64,7 +62,7 @@ qx.Bootstrap.define("qx.bom.client.Pdfjs",
64
62
  * @param context {Object} The context object for the callback function.
65
63
  * @internal
66
64
  */
67
- getPdfjs: function(callback, context) {
65
+ getPdfjs(callback, context) {
68
66
  qx.bom.client.Pdfjs.__isAvailable(callback, context);
69
67
  },
70
68
 
@@ -74,15 +72,15 @@ qx.Bootstrap.define("qx.bom.client.Pdfjs",
74
72
  * @param callback {Function} The callback function which should be called.
75
73
  * @param context {Object} The context object for the callback function.
76
74
  */
77
- __isAvailable: function(callback, context) {
75
+ __isAvailable(callback, context) {
78
76
  var resManager = qx.util.ResourceManager.getInstance();
79
77
  var urlToPdf = resManager.toUri("qx/static/empty.pdf");
80
78
  var pluginDetect = qx.bom.client.Pdfjs.__getPluginDetect();
81
- var pluginDetectCallback = function(PluginDetect) {
82
- var result = (pluginDetect.isMinVersion('PDFjs', 0) === 0);
79
+ var pluginDetectCallback = function (PluginDetect) {
80
+ var result = pluginDetect.isMinVersion("PDFjs", 0) === 0;
83
81
  callback.call(context, result);
84
82
  };
85
- pluginDetect.onDetectionDone('PDFjs', pluginDetectCallback, urlToPdf);
83
+ pluginDetect.onDetectionDone("PDFjs", pluginDetectCallback, urlToPdf);
86
84
  },
87
85
 
88
86
  /**
@@ -96,7 +94,7 @@ qx.Bootstrap.define("qx.bom.client.Pdfjs",
96
94
  /**
97
95
  * Register PDF.js detection asynchronously.
98
96
  */
99
- defer : function(statics) {
97
+ defer(statics) {
100
98
  qx.core.Environment.addAsync("plugin.pdfjs", statics.getPdfjs);
101
99
  }
102
100
  });
@@ -105,1196 +103,1495 @@ qx.Bootstrap.define("qx.bom.client.Pdfjs",
105
103
  * @lint ignoreUnused(a, b, c, d, e, f, g, h, i, j)
106
104
  * @lint ignoreDeprecated(eval)
107
105
  */
108
- (function() {
106
+ (function () {
107
+ /**
108
+ * Below is the original minified PluginDetect code with some minor changes:
109
+ *
110
+ * - beautified with http://jsbeautifier.org/
111
+ * - wrapped code as closure to prevent leaking PluginDetect in global namespace
112
+ * - renamed all catch vars to 'ex' because of lint warnings:
113
+ * - "Shadowing scoped var with catch parameter (bug#1207)"
114
+ */
115
+ /**
116
+ * PluginDetect v0.8.7
117
+ * www.pinlady.net/PluginDetect/license/
118
+ * [ getVersion isMinVersion hasMimeType onDetectionDone ]
119
+ * [ PDF.js ]
120
+ */
121
+ var PluginDetect = {
122
+ version: "0.8.7",
123
+ name: "PluginDetect",
124
+ openTag: "<",
125
+ hasOwnProperty: {}.constructor.prototype.hasOwnProperty,
126
+ hasOwn(c, d) {
127
+ var a;
128
+ try {
129
+ a = this.hasOwnProperty.call(c, d);
130
+ } catch (ex) {}
131
+ return !!a;
132
+ },
133
+ rgx: {
134
+ str: /string/i,
135
+ num: /number/i,
136
+ fun: /function/i,
137
+ arr: /array/i,
138
+ any: /Boolean|String|Number|Function|Array|Date|RegExp|Error/i
139
+ },
109
140
 
110
- /**
111
- * Below is the original minified PluginDetect code with some minor changes:
112
- *
113
- * - beautified with http://jsbeautifier.org/
114
- * - wrapped code as closure to prevent leaking PluginDetect in global namespace
115
- * - renamed all catch vars to 'ex' because of lint warnings:
116
- * - "Shadowing scoped var with catch parameter (bug#1207)"
117
- */
118
- /**
119
- * PluginDetect v0.8.7
120
- * www.pinlady.net/PluginDetect/license/
121
- * [ getVersion isMinVersion hasMimeType onDetectionDone ]
122
- * [ PDF.js ]
123
- */
124
- var PluginDetect = {
125
- version: "0.8.7",
126
- name: "PluginDetect",
127
- openTag: "<",
128
- hasOwnProperty: ({}).constructor.prototype.hasOwnProperty,
129
- hasOwn: function (c, d) {
130
- var a;
131
- try {
132
- a = this.hasOwnProperty.call(c, d);
133
- } catch (ex) {}
134
- return !!a;
135
- },
136
- rgx: {
137
- str: /string/i,
138
- num: /number/i,
139
- fun: /function/i,
140
- arr: /array/i,
141
- any: /Boolean|String|Number|Function|Array|Date|RegExp|Error/i
142
- },
143
- toString: ({}).constructor.prototype.toString,
144
- isPlainObject: function (c) {
145
- var a = this;
146
- if (!c || a.rgx.any.test(a.toString.call(c)) || c.window == c || a.rgx.num.test(a.toString.call(c.nodeType))) {
147
- return 0;
148
- }
149
- try {
150
- if (!a.hasOwn(c, "constructor") && !a.hasOwn(c.constructor.prototype, "isPrototypeOf")) {
141
+ toString: {}.constructor.prototype.toString,
142
+ isPlainObject(c) {
143
+ var a = this;
144
+ if (
145
+ !c ||
146
+ a.rgx.any.test(a.toString.call(c)) ||
147
+ c.window == c ||
148
+ a.rgx.num.test(a.toString.call(c.nodeType))
149
+ ) {
151
150
  return 0;
152
151
  }
153
- } catch (ex) {
154
- return 0;
155
- }
156
- return 1;
157
- },
158
- isDefined: function (b) {
159
- return typeof b != "undefined";
160
- },
161
- isArray: function (b) {
162
- return this.rgx.arr.test(this.toString.call(b));
163
- },
164
- isString: function (b) {
165
- return this.rgx.str.test(this.toString.call(b));
166
- },
167
- isNum: function (b) {
168
- return this.rgx.num.test(this.toString.call(b));
169
- },
170
- isStrNum: function (b) {
171
- return this.isString(b) && (/\d/).test(b);
172
- },
173
- isFunc: function (b) {
174
- return this.rgx.fun.test(this.toString.call(b));
175
- },
176
- getNumRegx: /[\d][\d\.\_,\-]*/,
177
- splitNumRegx: /[\.\_,\-]/g,
178
- getNum: function (b, c) {
179
- var d = this,
180
- a = d.isStrNum(b) ? (d.isDefined(c) ? new RegExp(c) : d.getNumRegx).exec(b) : null;
181
- return a ? a[0] : null;
182
- },
183
- compareNums: function (h, f, d) {
184
- var e = this,
185
- c, b, a, g = parseInt;
186
- if (e.isStrNum(h) && e.isStrNum(f)) {
187
- if (e.isDefined(d) && d.compareNums) {
188
- return d.compareNums(h, f);
152
+ try {
153
+ if (
154
+ !a.hasOwn(c, "constructor") &&
155
+ !a.hasOwn(c.constructor.prototype, "isPrototypeOf")
156
+ ) {
157
+ return 0;
158
+ }
159
+ } catch (ex) {
160
+ return 0;
189
161
  }
190
- c = h.split(e.splitNumRegx);
191
- b = f.split(e.splitNumRegx);
192
- for (a = 0; a < Math.min(c.length, b.length); a++) {
193
- if (g(c[a], 10) > g(b[a], 10)) {
194
- return 1;
162
+ return 1;
163
+ },
164
+ isDefined(b) {
165
+ return typeof b != "undefined";
166
+ },
167
+ isArray(b) {
168
+ return this.rgx.arr.test(this.toString.call(b));
169
+ },
170
+ isString(b) {
171
+ return this.rgx.str.test(this.toString.call(b));
172
+ },
173
+ isNum(b) {
174
+ return this.rgx.num.test(this.toString.call(b));
175
+ },
176
+ isStrNum(b) {
177
+ return this.isString(b) && /\d/.test(b);
178
+ },
179
+ isFunc(b) {
180
+ return this.rgx.fun.test(this.toString.call(b));
181
+ },
182
+ getNumRegx: /[\d][\d\.\_,\-]*/,
183
+ splitNumRegx: /[\.\_,\-]/g,
184
+ getNum(b, c) {
185
+ var d = this,
186
+ a = d.isStrNum(b)
187
+ ? (d.isDefined(c) ? new RegExp(c) : d.getNumRegx).exec(b)
188
+ : null;
189
+ return a ? a[0] : null;
190
+ },
191
+ compareNums(h, f, d) {
192
+ var e = this,
193
+ c,
194
+ b,
195
+ a,
196
+ g = parseInt;
197
+ if (e.isStrNum(h) && e.isStrNum(f)) {
198
+ if (e.isDefined(d) && d.compareNums) {
199
+ return d.compareNums(h, f);
195
200
  }
196
- if (g(c[a], 10) < g(b[a], 10)) {
197
- return -1;
201
+ c = h.split(e.splitNumRegx);
202
+ b = f.split(e.splitNumRegx);
203
+ for (a = 0; a < Math.min(c.length, b.length); a++) {
204
+ if (g(c[a], 10) > g(b[a], 10)) {
205
+ return 1;
206
+ }
207
+ if (g(c[a], 10) < g(b[a], 10)) {
208
+ return -1;
209
+ }
198
210
  }
199
211
  }
200
- }
201
- return 0;
202
- },
203
- formatNum: function (b, c) {
204
- var d = this,
205
- a, e;
206
- if (!d.isStrNum(b)) {
207
- return null;
208
- }
209
- if (!d.isNum(c)) {
210
- c = 4;
211
- }
212
- c--;
213
- e = b.replace(/\s/g, "").split(d.splitNumRegx).concat(["0", "0", "0", "0"]);
214
- for (a = 0; a < 4; a++) {
215
- if (/^(0+)(.+)$/.test(e[a])) {
216
- e[a] = RegExp.$2;
212
+ return 0;
213
+ },
214
+ formatNum(b, c) {
215
+ var d = this,
216
+ a,
217
+ e;
218
+ if (!d.isStrNum(b)) {
219
+ return null;
217
220
  }
218
- if (a > c || !(/\d/).test(e[a])) {
219
- e[a] = "0";
221
+ if (!d.isNum(c)) {
222
+ c = 4;
220
223
  }
221
- }
222
- return e.slice(0, 4).join(",");
223
- },
224
- getPROP: function (d, b, a) {
225
- try {
226
- if (d) {
227
- a = d[b];
224
+ c--;
225
+ e = b
226
+ .replace(/\s/g, "")
227
+ .split(d.splitNumRegx)
228
+ .concat(["0", "0", "0", "0"]);
229
+ for (a = 0; a < 4; a++) {
230
+ if (/^(0+)(.+)$/.test(e[a])) {
231
+ e[a] = RegExp.$2;
232
+ }
233
+ if (a > c || !/\d/.test(e[a])) {
234
+ e[a] = "0";
235
+ }
228
236
  }
229
- } catch (ex) {}
230
- return a;
231
- },
232
- findNavPlugin: function (h) {
233
- if (h.dbug) {
234
- return h.dbug;
235
- }
236
- if (window.navigator) {
237
- var d = this,
238
- n = {
239
- Find: d.isString(h.find) ? new RegExp(h.find, "i") : h.find,
240
- Find2: d.isString(h.find2) ? new RegExp(h.find2, "i") : h.find2,
241
- Avoid: h.avoid ? (d.isString(h.avoid) ? new RegExp(h.avoid, "i") : h.avoid) : 0,
242
- Num: h.num ? /\d/ : 0
243
- }, f, c, g, j, m, l, b, a = navigator.mimeTypes,
244
- k = navigator.plugins,
245
- o = null;
246
- if (h.mimes && a) {
247
- m = d.isArray(h.mimes) ? [].concat(h.mimes) : (d.isString(h.mimes) ? [h.mimes] : []);
248
- for (f = 0; f < m.length; f++) {
249
- c = 0;
250
- try {
251
- if (d.isString(m[f]) && /[^\s]/.test(m[f])) {
252
- c = a[m[f]].enabledPlugin;
253
- }
254
- } catch (ex) {}
255
- if (c) {
256
- g = d.findNavPlugin_(c, n);
257
- if (g.obj) {
258
- o = g.obj;
259
- };
260
- if (o && !d.dbug) {
261
- return o;
262
- }
263
- }
237
+ return e.slice(0, 4).join(",");
238
+ },
239
+ getPROP(d, b, a) {
240
+ try {
241
+ if (d) {
242
+ a = d[b];
264
243
  }
244
+ } catch (ex) {}
245
+ return a;
246
+ },
247
+ findNavPlugin(h) {
248
+ if (h.dbug) {
249
+ return h.dbug;
265
250
  }
266
- if (h.plugins && k) {
267
- l = d.isArray(h.plugins) ? [].concat(h.plugins) : (d.isString(h.plugins) ? [h.plugins] : []);
268
- for (f = 0; f < l.length; f++) {
269
- c = 0;
270
- try {
271
- if (l[f] && d.isString(l[f])) {
272
- c = k[l[f]];
273
- }
274
- } catch (ex) {}
275
- if (c) {
276
- g = d.findNavPlugin_(c, n);
277
- if (g.obj) {
278
- o = g.obj;
279
- };
280
- if (o && !d.dbug) {
281
- return o;
251
+ if (window.navigator) {
252
+ var d = this,
253
+ n = {
254
+ Find: d.isString(h.find) ? new RegExp(h.find, "i") : h.find,
255
+ Find2: d.isString(h.find2) ? new RegExp(h.find2, "i") : h.find2,
256
+ Avoid: h.avoid
257
+ ? d.isString(h.avoid)
258
+ ? new RegExp(h.avoid, "i")
259
+ : h.avoid
260
+ : 0,
261
+ Num: h.num ? /\d/ : 0
262
+ },
263
+ f,
264
+ c,
265
+ g,
266
+ j,
267
+ m,
268
+ l,
269
+ b,
270
+ a = navigator.mimeTypes,
271
+ k = navigator.plugins,
272
+ o = null;
273
+ if (h.mimes && a) {
274
+ m = d.isArray(h.mimes)
275
+ ? [].concat(h.mimes)
276
+ : d.isString(h.mimes)
277
+ ? [h.mimes]
278
+ : [];
279
+ for (f = 0; f < m.length; f++) {
280
+ c = 0;
281
+ try {
282
+ if (d.isString(m[f]) && /[^\s]/.test(m[f])) {
283
+ c = a[m[f]].enabledPlugin;
284
+ }
285
+ } catch (ex) {}
286
+ if (c) {
287
+ g = d.findNavPlugin_(c, n);
288
+ if (g.obj) {
289
+ o = g.obj;
290
+ }
291
+ if (o && !d.dbug) {
292
+ return o;
293
+ }
282
294
  }
283
295
  }
284
296
  }
285
- b = k.length;
286
- if (d.isNum(b)) {
287
- for (f = 0; f < b; f++) {
297
+ if (h.plugins && k) {
298
+ l = d.isArray(h.plugins)
299
+ ? [].concat(h.plugins)
300
+ : d.isString(h.plugins)
301
+ ? [h.plugins]
302
+ : [];
303
+ for (f = 0; f < l.length; f++) {
288
304
  c = 0;
289
305
  try {
290
- c = k[f];
306
+ if (l[f] && d.isString(l[f])) {
307
+ c = k[l[f]];
308
+ }
291
309
  } catch (ex) {}
292
310
  if (c) {
293
311
  g = d.findNavPlugin_(c, n);
294
312
  if (g.obj) {
295
313
  o = g.obj;
296
- };
314
+ }
297
315
  if (o && !d.dbug) {
298
316
  return o;
299
317
  }
300
318
  }
301
319
  }
302
- }
303
- }
304
- }
305
- return o;
306
- },
307
- findNavPlugin_: function (f, d) {
308
- var e = this,
309
- c = f.description || "",
310
- b = f.name || "",
311
- a = {};
312
- if ((d.Find.test(c) && (!d.Find2 || d.Find2.test(b)) && (!d.Num || d.Num.test(RegExp.leftContext + RegExp.rightContext))) || (d.Find.test(b) && (!d.Find2 || d.Find2.test(c)) && (!d.Num || d.Num.test(RegExp.leftContext + RegExp.rightContext)))) {
313
- if (!d.Avoid || !(d.Avoid.test(c) || d.Avoid.test(b))) {
314
- a.obj = f;
315
- }
316
- }
317
- return a;
318
- },
319
- getVersionDelimiter: ",",
320
- findPlugin: function (d) {
321
- var c = this,
322
- b, d, a = {
323
- status: -3,
324
- plugin: 0
325
- };
326
- if (!c.isString(d)) {
327
- return a;
328
- }
329
- if (d.length == 1) {
330
- c.getVersionDelimiter = d;
331
- return a;
332
- }
333
- d = d.toLowerCase().replace(/\s/g, "");
334
- b = c.Plugins[d];
335
- if (!b || !b.getVersion) {
336
- return a;
337
- }
338
- a.plugin = b;
339
- a.status = 1;
340
- return a;
341
- },
342
- AXO: (function () {
343
- var b, a;
344
- try {
345
- b = new window.ActiveXObject();
346
- } catch (ex) {}
347
- return b ? null : window.ActiveXObject;
348
- })(),
349
- getAXO: function (a) {
350
- var d = null,
351
- c, b = this;
352
- try {
353
- d = new b.AXO(a);
354
- } catch (ex) {};
355
- if (d) {
356
- b.browser.ActiveXEnabled = !0
357
- }
358
- return d
359
- },
360
- browser: {},
361
- INIT: function () {
362
- this.init.library(this)
363
- },
364
- init: {
365
- $: 1,
366
- hasRun: 0,
367
- objProperties: function (d, e, c) {
368
- var a, b = {};
369
- if (e && c) {
370
- if (e[c[0]] === 1 && d.hasOwn(e, c[0]) && d.isPlainObject(e)) {
371
- for (a = 0; a < c.length; a = a + 2) {
372
- e[c[a]] = c[a + 1];
373
- b[c[a]] = 1
374
- }
375
- }
376
- for (a in e) {
377
- if (e[a] && e[a][c[0]] === 1 && d.hasOwn(e, a) && !d.hasOwn(b, a)) {
378
- this.objProperties(d, e[a], c)
320
+ b = k.length;
321
+ if (d.isNum(b)) {
322
+ for (f = 0; f < b; f++) {
323
+ c = 0;
324
+ try {
325
+ c = k[f];
326
+ } catch (ex) {}
327
+ if (c) {
328
+ g = d.findNavPlugin_(c, n);
329
+ if (g.obj) {
330
+ o = g.obj;
331
+ }
332
+ if (o && !d.dbug) {
333
+ return o;
334
+ }
335
+ }
336
+ }
379
337
  }
380
338
  }
381
339
  }
340
+ return o;
382
341
  },
383
- plugin: function (a, c) {
384
- var d = this,
385
- b = d.$;
386
- if (b.isPlainObject(a) && b.isFunc(a.getVersion)) {
387
- if (!b.isDefined(a.getVersionDone)) {
388
- a.installed = null;
389
- a.version = null;
390
- a.version0 = null;
391
- a.getVersionDone = null;
392
- a.pluginName = c
342
+ findNavPlugin_(f, d) {
343
+ var e = this,
344
+ c = f.description || "",
345
+ b = f.name || "",
346
+ a = {};
347
+ if (
348
+ (d.Find.test(c) &&
349
+ (!d.Find2 || d.Find2.test(b)) &&
350
+ (!d.Num || d.Num.test(RegExp.leftContext + RegExp.rightContext))) ||
351
+ (d.Find.test(b) &&
352
+ (!d.Find2 || d.Find2.test(c)) &&
353
+ (!d.Num || d.Num.test(RegExp.leftContext + RegExp.rightContext)))
354
+ ) {
355
+ if (!d.Avoid || !(d.Avoid.test(c) || d.Avoid.test(b))) {
356
+ a.obj = f;
393
357
  }
394
- d.objProperties(b, a, ["$", b, "$$", a])
395
358
  }
359
+ return a;
396
360
  },
397
- detectIE: function () {
398
- var init = this;
399
- var $ = init.$;
400
- var browser = $.browser;
401
- var doc = document;
402
- var x;
403
- var tmp;
404
- var userAgent = window.navigator ? navigator.userAgent || "" : "";
405
- var progid;
406
- var progid1;
407
- var progid2;
408
- browser.ActiveXFilteringEnabled = !1;
409
- browser.ActiveXEnabled = !1;
410
- try {
411
- browser.ActiveXFilteringEnabled = !! window.external.msActiveXFilteringEnabled()
412
- } catch (ex) {}
413
- progid1 = ["Msxml2.XMLHTTP", "Msxml2.DOMDocument", "Microsoft.XMLDOM", "TDCCtl.TDCCtl", "Shell.UIHelper", "HtmlDlgSafeHelper.HtmlDlgSafeHelper", "Scripting.Dictionary"];
414
- progid2 = ["WMPlayer.OCX", "ShockwaveFlash.ShockwaveFlash", "AgControl.AgControl"];
415
- progid = progid1.concat(progid2);
416
- for (x = 0; x < progid.length; x++) {
417
- if ($.getAXO(progid[x]) && !$.dbug) {
418
- break
419
- }
361
+ getVersionDelimiter: ",",
362
+ findPlugin(d) {
363
+ var c = this,
364
+ b,
365
+ d,
366
+ a = {
367
+ status: -3,
368
+ plugin: 0
369
+ };
370
+
371
+ if (!c.isString(d)) {
372
+ return a;
420
373
  }
421
- if (browser.ActiveXEnabled && browser.ActiveXFilteringEnabled) {
422
- for (x = 0; x < progid2.length; x++) {
423
- if ($.getAXO(progid2[x])) {
424
- browser.ActiveXFilteringEnabled = !1;
425
- break
426
- }
427
- }
428
- };
429
- tmp = doc.documentMode;
374
+ if (d.length == 1) {
375
+ c.getVersionDelimiter = d;
376
+ return a;
377
+ }
378
+ d = d.toLowerCase().replace(/\s/g, "");
379
+ b = c.Plugins[d];
380
+ if (!b || !b.getVersion) {
381
+ return a;
382
+ }
383
+ a.plugin = b;
384
+ a.status = 1;
385
+ return a;
386
+ },
387
+ AXO: (function () {
388
+ var b, a;
430
389
  try {
431
- doc.documentMode = ""
390
+ b = new window.ActiveXObject();
432
391
  } catch (ex) {}
433
- browser.isIE = browser.ActiveXEnabled || $.isNum(doc.documentMode) || eval("/*@cc_on!@*/!1");
392
+ return b ? null : window.ActiveXObject;
393
+ })(),
394
+ getAXO(a) {
395
+ var d = null,
396
+ c,
397
+ b = this;
434
398
  try {
435
- doc.documentMode = tmp
436
- } catch (ex) {};
437
- browser.verIE = null;
438
- if (browser.isIE) {
439
- browser.verIE = ($.isNum(doc.documentMode) && doc.documentMode >= 7 ? doc.documentMode : 0) || ((/^(?:.*?[^a-zA-Z])??(?:MSIE|rv\s*\:)\s*(\d+\.?\d*)/i).test(userAgent) ? parseFloat(RegExp.$1, 10) : 7)
399
+ d = new b.AXO(a);
400
+ } catch (ex) {}
401
+ if (d) {
402
+ b.browser.ActiveXEnabled = !0;
440
403
  }
404
+ return d;
441
405
  },
442
- detectNonIE: function () {
443
- var f = this,
444
- d = this.$,
445
- a = d.browser,
446
- e = window.navigator ? navigator : {}, c = a.isIE ? "" : e.userAgent || "",
447
- g = e.vendor || "",
448
- b = e.product || "";
449
- a.isGecko = (/Gecko/i).test(b) && (/Gecko\s*\/\s*\d/i).test(c);
450
- a.verGecko = a.isGecko ? d.formatNum((/rv\s*\:\s*([\.\,\d]+)/i).test(c) ? RegExp.$1 : "0.9") : null;
451
- a.isChrome = (/(Chrome|CriOS)\s*\/\s*(\d[\d\.]*)/i).test(c);
452
- a.verChrome = a.isChrome ? d.formatNum(RegExp.$2) : null;
453
- a.isSafari = !a.isChrome && ((/Apple/i).test(g) || !g) && (/Safari\s*\/\s*(\d[\d\.]*)/i).test(c);
454
- a.verSafari = a.isSafari && (/Version\s*\/\s*(\d[\d\.]*)/i).test(c) ? d.formatNum(RegExp.$1) : null;
455
- a.isOpera = (/Opera\s*[\/]?\s*(\d+\.?\d*)/i).test(c);
456
- a.verOpera = a.isOpera && ((/Version\s*\/\s*(\d+\.?\d*)/i).test(c) || 1) ? parseFloat(RegExp.$1, 10) : null
406
+ browser: {},
407
+ INIT() {
408
+ this.init.library(this);
457
409
  },
458
- detectPlatform: function () {
459
- var e = this,
460
- d = e.$,
461
- b, a = window.navigator ? navigator.platform || "" : "";
462
- d.OS = 100;
463
- if (a) {
464
- var c = ["Win", 1, "Mac", 2, "Linux", 3, "FreeBSD", 4, "iPhone", 21.1, "iPod", 21.2, "iPad", 21.3, "Win.*CE", 22.1, "Win.*Mobile", 22.2, "Pocket\\s*PC", 22.3, "", 100];
465
- for (b = c.length - 2; b >= 0; b = b - 2) {
466
- if (c[b] && new RegExp(c[b], "i").test(a)) {
467
- d.OS = c[b + 1];
468
- break
410
+ init: {
411
+ $: 1,
412
+ hasRun: 0,
413
+ objProperties(d, e, c) {
414
+ var a,
415
+ b = {};
416
+ if (e && c) {
417
+ if (e[c[0]] === 1 && d.hasOwn(e, c[0]) && d.isPlainObject(e)) {
418
+ for (a = 0; a < c.length; a = a + 2) {
419
+ e[c[a]] = c[a + 1];
420
+ b[c[a]] = 1;
421
+ }
422
+ }
423
+ for (a in e) {
424
+ if (e[a] && e[a][c[0]] === 1 && d.hasOwn(e, a) && !d.hasOwn(b, a)) {
425
+ this.objProperties(d, e[a], c);
426
+ }
469
427
  }
470
428
  }
471
- }
472
- },
473
- library: function (b) {
474
- var d = this,
475
- c = document,
476
- a;
477
- d.objProperties(b, b, ["$", b]);
478
- for (a in b.Plugins) {
479
- if (b.hasOwn(b.Plugins, a)) {
480
- d.plugin(b.Plugins[a], a)
429
+ },
430
+ plugin(a, c) {
431
+ var d = this,
432
+ b = d.$;
433
+ if (b.isPlainObject(a) && b.isFunc(a.getVersion)) {
434
+ if (!b.isDefined(a.getVersionDone)) {
435
+ a.installed = null;
436
+ a.version = null;
437
+ a.version0 = null;
438
+ a.getVersionDone = null;
439
+ a.pluginName = c;
440
+ }
441
+ d.objProperties(b, a, ["$", b, "$$", a]);
481
442
  }
482
- };
483
- b.PUBLIC.init();
484
- b.win.init();
485
- b.head = c.getElementsByTagName("head")[0] || c.getElementsByTagName("body")[0] || c.body || null;
486
- d.detectPlatform();
487
- d.detectIE();
488
- d.detectNonIE();
489
- d.hasRun = 1
490
- }
491
- },
492
- ev: {
493
- $: 1,
494
- handler: function (d, c, b, a) {
495
- return function () {
496
- d(c, b, a)
497
- }
498
- },
499
- fPush: function (b, a) {
500
- var c = this,
501
- d = c.$;
502
- if (d.isArray(a) && (d.isFunc(b) || (d.isArray(b) && b.length > 0 && d.isFunc(b[0])))) {
503
- a.push(b)
504
- }
505
- },
506
- call0: function (d) {
507
- var b = this,
508
- c = b.$,
509
- a = c.isArray(d) ? d.length : -1;
510
- if (a > 0 && c.isFunc(d[0])) {
511
- d[0](c, a > 1 ? d[1] : 0, a > 2 ? d[2] : 0, a > 3 ? d[3] : 0)
512
- } else {
513
- if (c.isFunc(d)) {
514
- d(c)
443
+ },
444
+ detectIE() {
445
+ var init = this;
446
+ var $ = init.$;
447
+ var browser = $.browser;
448
+ var doc = document;
449
+ var x;
450
+ var tmp;
451
+ var userAgent = window.navigator ? navigator.userAgent || "" : "";
452
+ var progid;
453
+ var progid1;
454
+ var progid2;
455
+ browser.ActiveXFilteringEnabled = !1;
456
+ browser.ActiveXEnabled = !1;
457
+ try {
458
+ browser.ActiveXFilteringEnabled =
459
+ !!window.external.msActiveXFilteringEnabled();
460
+ } catch (ex) {}
461
+ progid1 = [
462
+ "Msxml2.XMLHTTP",
463
+ "Msxml2.DOMDocument",
464
+ "Microsoft.XMLDOM",
465
+ "TDCCtl.TDCCtl",
466
+ "Shell.UIHelper",
467
+ "HtmlDlgSafeHelper.HtmlDlgSafeHelper",
468
+ "Scripting.Dictionary"
469
+ ];
470
+
471
+ progid2 = [
472
+ "WMPlayer.OCX",
473
+ "ShockwaveFlash.ShockwaveFlash",
474
+ "AgControl.AgControl"
475
+ ];
476
+
477
+ progid = progid1.concat(progid2);
478
+ for (x = 0; x < progid.length; x++) {
479
+ if ($.getAXO(progid[x]) && !$.dbug) {
480
+ break;
481
+ }
515
482
  }
516
- }
517
- },
518
- callArray0: function (a) {
519
- var b = this,
520
- d = b.$,
521
- c;
522
- if (d.isArray(a)) {
523
- while (a.length) {
524
- c = a[0];
525
- a.splice(0, 1);
526
- b.call0(c)
483
+ if (browser.ActiveXEnabled && browser.ActiveXFilteringEnabled) {
484
+ for (x = 0; x < progid2.length; x++) {
485
+ if ($.getAXO(progid2[x])) {
486
+ browser.ActiveXFilteringEnabled = !1;
487
+ break;
488
+ }
489
+ }
527
490
  }
528
- }
529
- },
530
- call: function (b) {
531
- var a = this;
532
- a.call0(b);
533
- a.ifDetectDoneCallHndlrs()
534
- },
535
- callArray: function (a) {
536
- var b = this;
537
- b.callArray0(a);
538
- b.ifDetectDoneCallHndlrs()
539
- },
540
- allDoneHndlrs: [],
541
- ifDetectDoneCallHndlrs: function () {
542
- var c = this,
543
- d = c.$,
544
- a, b;
545
- if (!c.allDoneHndlrs.length) {
546
- return
547
- }
548
- if (d.win) {
549
- if (!d.win.loaded || d.win.loadPrvtHndlrs.length || d.win.loadPblcHndlrs.length) {
550
- return
491
+ tmp = doc.documentMode;
492
+ try {
493
+ doc.documentMode = "";
494
+ } catch (ex) {}
495
+ browser.isIE =
496
+ browser.ActiveXEnabled ||
497
+ $.isNum(doc.documentMode) ||
498
+ eval("/*@cc_on!@*/!1");
499
+ try {
500
+ doc.documentMode = tmp;
501
+ } catch (ex) {}
502
+ browser.verIE = null;
503
+ if (browser.isIE) {
504
+ browser.verIE =
505
+ ($.isNum(doc.documentMode) && doc.documentMode >= 7
506
+ ? doc.documentMode
507
+ : 0) ||
508
+ (/^(?:.*?[^a-zA-Z])??(?:MSIE|rv\s*\:)\s*(\d+\.?\d*)/i.test(
509
+ userAgent
510
+ )
511
+ ? parseFloat(RegExp.$1, 10)
512
+ : 7);
551
513
  }
552
- }
553
- if (d.Plugins) {
554
- for (a in d.Plugins) {
555
- b = d.Plugins[a];
556
- if (d.hasOwn(d.Plugins, a) && b && d.isFunc(b.getVersion)) {
557
- if (b.OTF == 3 || (b.DoneHndlrs && b.DoneHndlrs.length)) {
558
- return
514
+ },
515
+ detectNonIE() {
516
+ var f = this,
517
+ d = this.$,
518
+ a = d.browser,
519
+ e = window.navigator ? navigator : {},
520
+ c = a.isIE ? "" : e.userAgent || "",
521
+ g = e.vendor || "",
522
+ b = e.product || "";
523
+ a.isGecko = /Gecko/i.test(b) && /Gecko\s*\/\s*\d/i.test(c);
524
+ a.verGecko = a.isGecko
525
+ ? d.formatNum(/rv\s*\:\s*([\.\,\d]+)/i.test(c) ? RegExp.$1 : "0.9")
526
+ : null;
527
+ a.isChrome = /(Chrome|CriOS)\s*\/\s*(\d[\d\.]*)/i.test(c);
528
+ a.verChrome = a.isChrome ? d.formatNum(RegExp.$2) : null;
529
+ a.isSafari =
530
+ !a.isChrome &&
531
+ (/Apple/i.test(g) || !g) &&
532
+ /Safari\s*\/\s*(\d[\d\.]*)/i.test(c);
533
+ a.verSafari =
534
+ a.isSafari && /Version\s*\/\s*(\d[\d\.]*)/i.test(c)
535
+ ? d.formatNum(RegExp.$1)
536
+ : null;
537
+ a.isOpera = /Opera\s*[\/]?\s*(\d+\.?\d*)/i.test(c);
538
+ a.verOpera =
539
+ a.isOpera && (/Version\s*\/\s*(\d+\.?\d*)/i.test(c) || 1)
540
+ ? parseFloat(RegExp.$1, 10)
541
+ : null;
542
+ },
543
+ detectPlatform() {
544
+ var e = this,
545
+ d = e.$,
546
+ b,
547
+ a = window.navigator ? navigator.platform || "" : "";
548
+ d.OS = 100;
549
+ if (a) {
550
+ var c = [
551
+ "Win",
552
+ 1,
553
+ "Mac",
554
+ 2,
555
+ "Linux",
556
+ 3,
557
+ "FreeBSD",
558
+ 4,
559
+ "iPhone",
560
+ 21.1,
561
+ "iPod",
562
+ 21.2,
563
+ "iPad",
564
+ 21.3,
565
+ "Win.*CE",
566
+ 22.1,
567
+ "Win.*Mobile",
568
+ 22.2,
569
+ "Pocket\\s*PC",
570
+ 22.3,
571
+ "",
572
+ 100
573
+ ];
574
+
575
+ for (b = c.length - 2; b >= 0; b = b - 2) {
576
+ if (c[b] && new RegExp(c[b], "i").test(a)) {
577
+ d.OS = c[b + 1];
578
+ break;
559
579
  }
560
580
  }
561
581
  }
562
- };
563
- c.callArray0(c.allDoneHndlrs)
564
- }
565
- },
566
- PUBLIC: {
567
- $: 1,
568
- init: function () {
569
- var c = this,
570
- b = c.$,
571
- a;
572
- for (a in c) {
573
- if (a !== "init" && b.hasOwn(c, a) && b.isFunc(c[a])) {
574
- b[a] = c[a](b)
582
+ },
583
+ library(b) {
584
+ var d = this,
585
+ c = document,
586
+ a;
587
+ d.objProperties(b, b, ["$", b]);
588
+ for (a in b.Plugins) {
589
+ if (b.hasOwn(b.Plugins, a)) {
590
+ d.plugin(b.Plugins[a], a);
591
+ }
575
592
  }
593
+ b.PUBLIC.init();
594
+ b.win.init();
595
+ b.head =
596
+ c.getElementsByTagName("head")[0] ||
597
+ c.getElementsByTagName("body")[0] ||
598
+ c.body ||
599
+ null;
600
+ d.detectPlatform();
601
+ d.detectIE();
602
+ d.detectNonIE();
603
+ d.hasRun = 1;
576
604
  }
577
605
  },
578
- isMinVersion: function (b) {
579
- var a = function (j, h, e, d) {
580
- var f = b.findPlugin(j),
581
- g, c = -1;
582
- if (f.status < 0) {
583
- return f.status
606
+
607
+ ev: {
608
+ $: 1,
609
+ handler(d, c, b, a) {
610
+ return function () {
611
+ d(c, b, a);
612
+ };
613
+ },
614
+ fPush(b, a) {
615
+ var c = this,
616
+ d = c.$;
617
+ if (
618
+ d.isArray(a) &&
619
+ (d.isFunc(b) || (d.isArray(b) && b.length > 0 && d.isFunc(b[0])))
620
+ ) {
621
+ a.push(b);
584
622
  }
585
- g = f.plugin;
586
- h = b.formatNum(b.isNum(h) ? h.toString() : (b.isStrNum(h) ? b.getNum(h) : "0"));
587
- if (g.getVersionDone != 1) {
588
- g.getVersion(h, e, d);
589
- if (g.getVersionDone === null) {
590
- g.getVersionDone = 1
623
+ },
624
+ call0(d) {
625
+ var b = this,
626
+ c = b.$,
627
+ a = c.isArray(d) ? d.length : -1;
628
+ if (a > 0 && c.isFunc(d[0])) {
629
+ d[0](c, a > 1 ? d[1] : 0, a > 2 ? d[2] : 0, a > 3 ? d[3] : 0);
630
+ } else {
631
+ if (c.isFunc(d)) {
632
+ d(c);
591
633
  }
592
634
  }
593
- if (g.installed !== null) {
594
- c = g.installed <= 0.5 ? g.installed : (g.installed == 0.7 ? 1 : (g.version === null ? 0 : (b.compareNums(g.version, h, g) >= 0 ? 1 : -0.1)))
595
- };
596
- return c
597
- };
598
- return a
599
- },
600
- getVersion: function (b) {
601
- var a = function (h, e, d) {
602
- var f = b.findPlugin(h),
603
- g, c;
604
- if (f.status < 0) {
605
- return null
606
- };
607
- g = f.plugin;
608
- if (g.getVersionDone != 1) {
609
- g.getVersion(null, e, d);
610
- if (g.getVersionDone === null) {
611
- g.getVersionDone = 1
635
+ },
636
+ callArray0(a) {
637
+ var b = this,
638
+ d = b.$,
639
+ c;
640
+ if (d.isArray(a)) {
641
+ while (a.length) {
642
+ c = a[0];
643
+ a.splice(0, 1);
644
+ b.call0(c);
612
645
  }
613
646
  }
614
- c = (g.version || g.version0);
615
- c = c ? c.replace(b.splitNumRegx, b.getVersionDelimiter) : c;
616
- return c
617
- };
618
- return a
619
- },
620
- onDetectionDone: function (b) {
621
- var a = function (j, h, d, c) {
622
- var e = b.findPlugin(j),
623
- k, g;
624
- if (e.status == -3) {
625
- return -1
626
- }
627
- g = e.plugin;
628
- if (!b.isArray(g.DoneHndlrs)) {
629
- g.DoneHndlrs = []
630
- };
631
- if (g.getVersionDone != 1) {
632
- k = b.getVersion ? b.getVersion(j, d, c) : b.isMinVersion(j, "0", d, c)
647
+ },
648
+ call(b) {
649
+ var a = this;
650
+ a.call0(b);
651
+ a.ifDetectDoneCallHndlrs();
652
+ },
653
+ callArray(a) {
654
+ var b = this;
655
+ b.callArray0(a);
656
+ b.ifDetectDoneCallHndlrs();
657
+ },
658
+ allDoneHndlrs: [],
659
+ ifDetectDoneCallHndlrs() {
660
+ var c = this,
661
+ d = c.$,
662
+ a,
663
+ b;
664
+ if (!c.allDoneHndlrs.length) {
665
+ return;
633
666
  }
634
- if (g.installed != -0.5 && g.installed != 0.5) {
635
- b.ev.call(h);
636
- return 1
667
+ if (d.win) {
668
+ if (
669
+ !d.win.loaded ||
670
+ d.win.loadPrvtHndlrs.length ||
671
+ d.win.loadPblcHndlrs.length
672
+ ) {
673
+ return;
674
+ }
637
675
  }
638
- b.ev.fPush(h, g.DoneHndlrs);
639
- return 0
640
- };
641
- return a
642
- },
643
- hasMimeType: function (b) {
644
- var a = function (h) {
645
- if (h && window.navigator && navigator.mimeTypes) {
646
- var l, k, d, j, g, c = navigator.mimeTypes,
647
- f = b.isArray(h) ? [].concat(h) : (b.isString(h) ? [h] : []);
648
- g = f.length;
649
- for (d = 0; d < g; d++) {
650
- l = 0;
651
- try {
652
- if (b.isString(f[d]) && /[^\s]/.test(f[d])) {
653
- l = c[f[d]]
676
+ if (d.Plugins) {
677
+ for (a in d.Plugins) {
678
+ b = d.Plugins[a];
679
+ if (d.hasOwn(d.Plugins, a) && b && d.isFunc(b.getVersion)) {
680
+ if (b.OTF == 3 || (b.DoneHndlrs && b.DoneHndlrs.length)) {
681
+ return;
654
682
  }
655
- } catch (ex) {}
656
- k = l ? l.enabledPlugin : 0;
657
- if (k && (k.name || k.description)) {
658
- return l
659
683
  }
660
684
  }
661
- };
662
- return null
663
- };
664
- return a
665
- },
666
- z: 0
667
- },
668
- win: {
669
- $: 1,
670
- loaded: false,
671
- hasRun: 0,
672
- init: function () {
673
- var b = this,
674
- a = b.$;
675
- if (!b.hasRun) {
676
- b.hasRun = 1;
677
- b.onLoad = a.ev.handler(b.$$onLoad, a);
678
- b.onUnload = a.ev.handler(b.$$onUnload, a);
679
- b.addEvent("load", b.onLoad);
680
- b.addEvent("unload", b.onUnload)
685
+ }
686
+ c.callArray0(c.allDoneHndlrs);
681
687
  }
682
688
  },
683
- addEvent: function (c, b) {
684
- var e = this,
685
- d = e.$,
686
- a = window;
687
- if (d.isFunc(b)) {
688
- if (a.addEventListener) {
689
- a.addEventListener(c, b, false)
690
- } else {
691
- if (a.attachEvent) {
692
- a.attachEvent("on" + c, b)
693
- } else {
694
- a["on" + c] = e.concatFn(b, a["on" + c])
689
+
690
+ PUBLIC: {
691
+ $: 1,
692
+ init() {
693
+ var c = this,
694
+ b = c.$,
695
+ a;
696
+ for (a in c) {
697
+ if (a !== "init" && b.hasOwn(c, a) && b.isFunc(c[a])) {
698
+ b[a] = c[a](b);
695
699
  }
696
700
  }
697
- }
701
+ },
702
+ isMinVersion(b) {
703
+ var a = function (j, h, e, d) {
704
+ var f = b.findPlugin(j),
705
+ g,
706
+ c = -1;
707
+ if (f.status < 0) {
708
+ return f.status;
709
+ }
710
+ g = f.plugin;
711
+ h = b.formatNum(
712
+ b.isNum(h) ? h.toString() : b.isStrNum(h) ? b.getNum(h) : "0"
713
+ );
714
+
715
+ if (g.getVersionDone != 1) {
716
+ g.getVersion(h, e, d);
717
+ if (g.getVersionDone === null) {
718
+ g.getVersionDone = 1;
719
+ }
720
+ }
721
+ if (g.installed !== null) {
722
+ c =
723
+ g.installed <= 0.5
724
+ ? g.installed
725
+ : g.installed == 0.7
726
+ ? 1
727
+ : g.version === null
728
+ ? 0
729
+ : b.compareNums(g.version, h, g) >= 0
730
+ ? 1
731
+ : -0.1;
732
+ }
733
+ return c;
734
+ };
735
+ return a;
736
+ },
737
+ getVersion(b) {
738
+ var a = function (h, e, d) {
739
+ var f = b.findPlugin(h),
740
+ g,
741
+ c;
742
+ if (f.status < 0) {
743
+ return null;
744
+ }
745
+ g = f.plugin;
746
+ if (g.getVersionDone != 1) {
747
+ g.getVersion(null, e, d);
748
+ if (g.getVersionDone === null) {
749
+ g.getVersionDone = 1;
750
+ }
751
+ }
752
+ c = g.version || g.version0;
753
+ c = c ? c.replace(b.splitNumRegx, b.getVersionDelimiter) : c;
754
+ return c;
755
+ };
756
+ return a;
757
+ },
758
+ onDetectionDone(b) {
759
+ var a = function (j, h, d, c) {
760
+ var e = b.findPlugin(j),
761
+ k,
762
+ g;
763
+ if (e.status == -3) {
764
+ return -1;
765
+ }
766
+ g = e.plugin;
767
+ if (!b.isArray(g.DoneHndlrs)) {
768
+ g.DoneHndlrs = [];
769
+ }
770
+ if (g.getVersionDone != 1) {
771
+ k = b.getVersion
772
+ ? b.getVersion(j, d, c)
773
+ : b.isMinVersion(j, "0", d, c);
774
+ }
775
+ if (g.installed != -0.5 && g.installed != 0.5) {
776
+ b.ev.call(h);
777
+ return 1;
778
+ }
779
+ b.ev.fPush(h, g.DoneHndlrs);
780
+ return 0;
781
+ };
782
+ return a;
783
+ },
784
+ hasMimeType(b) {
785
+ var a = function (h) {
786
+ if (h && window.navigator && navigator.mimeTypes) {
787
+ var l,
788
+ k,
789
+ d,
790
+ j,
791
+ g,
792
+ c = navigator.mimeTypes,
793
+ f = b.isArray(h) ? [].concat(h) : b.isString(h) ? [h] : [];
794
+ g = f.length;
795
+ for (d = 0; d < g; d++) {
796
+ l = 0;
797
+ try {
798
+ if (b.isString(f[d]) && /[^\s]/.test(f[d])) {
799
+ l = c[f[d]];
800
+ }
801
+ } catch (ex) {}
802
+ k = l ? l.enabledPlugin : 0;
803
+ if (k && (k.name || k.description)) {
804
+ return l;
805
+ }
806
+ }
807
+ }
808
+ return null;
809
+ };
810
+ return a;
811
+ },
812
+ z: 0
698
813
  },
699
- concatFn: function (d, c) {
700
- return function () {
701
- d();
702
- if (typeof c == "function") {
703
- c()
814
+
815
+ win: {
816
+ $: 1,
817
+ loaded: false,
818
+ hasRun: 0,
819
+ init() {
820
+ var b = this,
821
+ a = b.$;
822
+ if (!b.hasRun) {
823
+ b.hasRun = 1;
824
+ b.onLoad = a.ev.handler(b.$$onLoad, a);
825
+ b.onUnload = a.ev.handler(b.$$onUnload, a);
826
+ b.addEvent("load", b.onLoad);
827
+ b.addEvent("unload", b.onUnload);
704
828
  }
705
- }
706
- },
707
- loadPrvtHndlrs: [],
708
- loadPblcHndlrs: [],
709
- unloadHndlrs: [],
710
- $$onUnload: function (b) {
711
- if (b && b.win) {
712
- b.ev.callArray(b.win.unloadHndlrs);
713
- for (var a in b) {
714
- b[a] = 0
829
+ },
830
+ addEvent(c, b) {
831
+ var e = this,
832
+ d = e.$,
833
+ a = window;
834
+ if (d.isFunc(b)) {
835
+ if (a.addEventListener) {
836
+ a.addEventListener(c, b, false);
837
+ } else {
838
+ if (a.attachEvent) {
839
+ a.attachEvent("on" + c, b);
840
+ } else {
841
+ a["on" + c] = e.concatFn(b, a["on" + c]);
842
+ }
843
+ }
715
844
  }
716
- b = 0
717
- }
718
- },
719
- count: 0,
720
- countMax: 1,
721
- intervalLength: 10,
722
- $$onLoad: function (a) {
723
- if (!a || a.win.loaded) {
724
- return
725
- }
726
- var b = a.win;
727
- if (b.count < b.countMax && b.loadPrvtHndlrs.length) {
728
- setTimeout(b.onLoad, b.intervalLength)
729
- } else {
730
- b.loaded = true;
731
- a.ev.callArray(b.loadPrvtHndlrs);
732
- a.ev.callArray(b.loadPblcHndlrs)
733
- }
734
- b.count++
735
- }
736
- },
737
- DOM: {
738
- $: 1,
739
- isEnabled: {
740
- $: 1,
741
- objectTag: function () {
742
- var a = this.$;
743
- return a.browser.isIE ? a.browser.ActiveXEnabled : 1
744
845
  },
745
- objectTagUsingActiveX: function () {
746
- return this.$.browser.ActiveXEnabled
846
+ concatFn(d, c) {
847
+ return function () {
848
+ d();
849
+ if (typeof c == "function") {
850
+ c();
851
+ }
852
+ };
747
853
  },
748
- objectProperty: function () {
749
- var a = this.$;
750
- return a.browser.isIE && a.browser.verIE >= 7 ? 1 : 0
751
- }
752
- },
753
- div: null,
754
- divID: "plugindetect",
755
- divWidth: 300,
756
- getDiv: function () {
757
- var a = this;
758
- return a.div || document.getElementById(a.divID) || null
759
- },
760
- initDiv: function () {
761
- var b = this,
762
- c = b.$,
763
- a;
764
- if (!b.div) {
765
- a = b.getDiv();
766
- if (a) {
767
- b.div = a
854
+ loadPrvtHndlrs: [],
855
+ loadPblcHndlrs: [],
856
+ unloadHndlrs: [],
857
+ $$onUnload(b) {
858
+ if (b && b.win) {
859
+ b.ev.callArray(b.win.unloadHndlrs);
860
+ for (var a in b) {
861
+ b[a] = 0;
862
+ }
863
+ b = 0;
864
+ }
865
+ },
866
+ count: 0,
867
+ countMax: 1,
868
+ intervalLength: 10,
869
+ $$onLoad(a) {
870
+ if (!a || a.win.loaded) {
871
+ return;
872
+ }
873
+ var b = a.win;
874
+ if (b.count < b.countMax && b.loadPrvtHndlrs.length) {
875
+ setTimeout(b.onLoad, b.intervalLength);
768
876
  } else {
769
- b.div = document.createElement("div");
770
- b.div.id = b.divID;
771
- b.setStyle(b.div, b.getStyle.div());
772
- b.insertDivInBody(b.div)
877
+ b.loaded = true;
878
+ a.ev.callArray(b.loadPrvtHndlrs);
879
+ a.ev.callArray(b.loadPblcHndlrs);
773
880
  }
774
- c.ev.fPush([b.onWinUnloadEmptyDiv, b], c.win.unloadHndlrs)
881
+ b.count++;
775
882
  }
776
883
  },
777
- pluginSize: 1,
778
- altHTML: "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;",
779
- emptyNode: function (c) {
780
- var b = this,
781
- d = b.$,
782
- a;
783
- if (c && (/div|span/i).test(c.tagName || "")) {
784
- if (d.browser.isIE) {
785
- b.setStyle(c, ["display", "none"])
884
+
885
+ DOM: {
886
+ $: 1,
887
+ isEnabled: {
888
+ $: 1,
889
+ objectTag() {
890
+ var a = this.$;
891
+ return a.browser.isIE ? a.browser.ActiveXEnabled : 1;
892
+ },
893
+ objectTagUsingActiveX() {
894
+ return this.$.browser.ActiveXEnabled;
895
+ },
896
+ objectProperty() {
897
+ var a = this.$;
898
+ return a.browser.isIE && a.browser.verIE >= 7 ? 1 : 0;
786
899
  }
787
- try {
788
- c.innerHTML = ""
789
- } catch (ex) {}
790
- }
791
- },
792
- onWinUnloadEmptyDiv: function (f, d) {
793
- var b = d.getDiv(),
794
- a, c;
795
- if (b) {
796
- if (b.childNodes) {
797
- for (a = b.childNodes.length - 1; a >= 0; a--) {
798
- c = b.childNodes[a];
799
- d.emptyNode(c)
900
+ },
901
+
902
+ div: null,
903
+ divID: "plugindetect",
904
+ divWidth: 300,
905
+ getDiv() {
906
+ var a = this;
907
+ return a.div || document.getElementById(a.divID) || null;
908
+ },
909
+ initDiv() {
910
+ var b = this,
911
+ c = b.$,
912
+ a;
913
+ if (!b.div) {
914
+ a = b.getDiv();
915
+ if (a) {
916
+ b.div = a;
917
+ } else {
918
+ b.div = document.createElement("div");
919
+ b.div.id = b.divID;
920
+ b.setStyle(b.div, b.getStyle.div());
921
+ b.insertDivInBody(b.div);
800
922
  }
801
- try {
802
- b.innerHTML = ""
803
- } catch (ex) {}
923
+ c.ev.fPush([b.onWinUnloadEmptyDiv, b], c.win.unloadHndlrs);
804
924
  }
805
- if (b.parentNode) {
925
+ },
926
+ pluginSize: 1,
927
+ altHTML: "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;",
928
+ emptyNode(c) {
929
+ var b = this,
930
+ d = b.$,
931
+ a;
932
+ if (c && /div|span/i.test(c.tagName || "")) {
933
+ if (d.browser.isIE) {
934
+ b.setStyle(c, ["display", "none"]);
935
+ }
806
936
  try {
807
- b.parentNode.removeChild(b)
937
+ c.innerHTML = "";
808
938
  } catch (ex) {}
809
- b = null;
810
- d.div = null
811
939
  }
812
- }
813
- },
814
- width: function () {
815
- var g = this,
816
- e = g.DOM,
817
- f = e.$,
818
- d = g.span,
819
- b, c, a = -1;
820
- b = d && f.isNum(d.scrollWidth) ? d.scrollWidth : a;
821
- c = d && f.isNum(d.offsetWidth) ? d.offsetWidth : a;
822
- return c > 0 ? c : (b > 0 ? b : Math.max(c, b))
823
- },
824
- obj: function (b) {
825
- var d = this,
826
- c = d.span,
827
- a = c && c.firstChild ? c.firstChild : null;
828
- return a
829
- },
830
- readyState: function () {
831
- var b = this,
832
- a = b.DOM.$;
833
- return a.browser.isIE && a.isDefined(a.getPROP(b.span, "readyState")) ? a.getPROP(b.obj(), "readyState") : b.undefined
834
- },
835
- objectProperty: function () {
836
- var d = this,
837
- b = d.DOM,
838
- c = b.$,
839
- a;
840
- if (b.isEnabled.objectProperty()) {
841
- a = c.getPROP(d.obj(), "object")
842
- }
843
- return a
844
- },
845
- getTagStatus: function (b, m, r, p, f, h) {
846
- var s = this,
847
- d = s.$;
848
- if (!b || !b.span) {
849
- return -2
850
- }
851
- var k = b.width(),
852
- c = b.readyState(),
853
- a = b.objectProperty();
854
- if (a) {
855
- return 1.5
856
- }
857
- var g = /clsid\s*\:/i,
858
- o = r && g.test(r.outerHTML || "") ? r : (p && g.test(p.outerHTML || "") ? p : 0),
859
- i = r && !g.test(r.outerHTML || "") ? r : (p && !g.test(p.outerHTML || "") ? p : 0),
860
- l = b && g.test(b.outerHTML || "") ? o : i;
861
- if (!m || !m.span || !l || !l.span) {
862
- return 0
863
- }
864
- var j = l.width(),
865
- n = m.width(),
866
- t = l.readyState();
867
- if (k < 0 || j < 0 || n <= s.pluginSize) {
868
- return 0
869
- }
870
- if (h && !b.pi && d.isDefined(a) && d.browser.isIE && b.tagName == l.tagName && b.time <= l.time && k === j && c === 0 && t !== 0) {
871
- b.pi = 1
872
- }
873
- if (j < n) {
874
- return b.pi ? -0.1 : 0
875
- }
876
- if (k >= n) {
877
- if (!b.winLoaded && d.win.loaded) {
878
- return b.pi ? -0.5 : -1
879
- }
880
- if (d.isNum(f)) {
881
- if (!d.isNum(b.count2)) {
882
- b.count2 = f
940
+ },
941
+ onWinUnloadEmptyDiv(f, d) {
942
+ var b = d.getDiv(),
943
+ a,
944
+ c;
945
+ if (b) {
946
+ if (b.childNodes) {
947
+ for (a = b.childNodes.length - 1; a >= 0; a--) {
948
+ c = b.childNodes[a];
949
+ d.emptyNode(c);
950
+ }
951
+ try {
952
+ b.innerHTML = "";
953
+ } catch (ex) {}
883
954
  }
884
- if (f - b.count2 > 0) {
885
- return b.pi ? -0.5 : -1
955
+ if (b.parentNode) {
956
+ try {
957
+ b.parentNode.removeChild(b);
958
+ } catch (ex) {}
959
+ b = null;
960
+ d.div = null;
886
961
  }
887
962
  }
888
- }
889
- try {
890
- if (k == s.pluginSize && (!d.browser.isIE || c === 4)) {
963
+ },
964
+ width() {
965
+ var g = this,
966
+ e = g.DOM,
967
+ f = e.$,
968
+ d = g.span,
969
+ b,
970
+ c,
971
+ a = -1;
972
+ b = d && f.isNum(d.scrollWidth) ? d.scrollWidth : a;
973
+ c = d && f.isNum(d.offsetWidth) ? d.offsetWidth : a;
974
+ return c > 0 ? c : b > 0 ? b : Math.max(c, b);
975
+ },
976
+ obj(b) {
977
+ var d = this,
978
+ c = d.span,
979
+ a = c && c.firstChild ? c.firstChild : null;
980
+ return a;
981
+ },
982
+ readyState() {
983
+ var b = this,
984
+ a = b.DOM.$;
985
+ return a.browser.isIE && a.isDefined(a.getPROP(b.span, "readyState"))
986
+ ? a.getPROP(b.obj(), "readyState")
987
+ : b.undefined;
988
+ },
989
+ objectProperty() {
990
+ var d = this,
991
+ b = d.DOM,
992
+ c = b.$,
993
+ a;
994
+ if (b.isEnabled.objectProperty()) {
995
+ a = c.getPROP(d.obj(), "object");
996
+ }
997
+ return a;
998
+ },
999
+ getTagStatus(b, m, r, p, f, h) {
1000
+ var s = this,
1001
+ d = s.$;
1002
+ if (!b || !b.span) {
1003
+ return -2;
1004
+ }
1005
+ var k = b.width(),
1006
+ c = b.readyState(),
1007
+ a = b.objectProperty();
1008
+ if (a) {
1009
+ return 1.5;
1010
+ }
1011
+ var g = /clsid\s*\:/i,
1012
+ o =
1013
+ r && g.test(r.outerHTML || "")
1014
+ ? r
1015
+ : p && g.test(p.outerHTML || "")
1016
+ ? p
1017
+ : 0,
1018
+ i =
1019
+ r && !g.test(r.outerHTML || "")
1020
+ ? r
1021
+ : p && !g.test(p.outerHTML || "")
1022
+ ? p
1023
+ : 0,
1024
+ l = b && g.test(b.outerHTML || "") ? o : i;
1025
+ if (!m || !m.span || !l || !l.span) {
1026
+ return 0;
1027
+ }
1028
+ var j = l.width(),
1029
+ n = m.width(),
1030
+ t = l.readyState();
1031
+ if (k < 0 || j < 0 || n <= s.pluginSize) {
1032
+ return 0;
1033
+ }
1034
+ if (
1035
+ h &&
1036
+ !b.pi &&
1037
+ d.isDefined(a) &&
1038
+ d.browser.isIE &&
1039
+ b.tagName == l.tagName &&
1040
+ b.time <= l.time &&
1041
+ k === j &&
1042
+ c === 0 &&
1043
+ t !== 0
1044
+ ) {
1045
+ b.pi = 1;
1046
+ }
1047
+ if (j < n) {
1048
+ return b.pi ? -0.1 : 0;
1049
+ }
1050
+ if (k >= n) {
891
1051
  if (!b.winLoaded && d.win.loaded) {
892
- return 1
1052
+ return b.pi ? -0.5 : -1;
893
1053
  }
894
- if (b.winLoaded && d.isNum(f)) {
895
- if (!d.isNum(b.count)) {
896
- b.count = f
1054
+ if (d.isNum(f)) {
1055
+ if (!d.isNum(b.count2)) {
1056
+ b.count2 = f;
897
1057
  }
898
- if (f - b.count >= 5) {
899
- return 1
1058
+ if (f - b.count2 > 0) {
1059
+ return b.pi ? -0.5 : -1;
900
1060
  }
901
1061
  }
902
1062
  }
903
- } catch (ex) {}
904
- return b.pi ? -0.1 : 0
905
- },
906
- setStyle: function (b, h) {
907
- var c = this,
908
- d = c.$,
909
- g = b.style,
910
- a;
911
- if (g && h) {
912
- for (a = 0; a < h.length; a = a + 2) {
913
- try {
914
- g[h[a]] = h[a + 1]
915
- } catch (ex) {}
916
- }
917
- }
918
- },
919
- getStyle: {
920
- $: 1,
921
- span: function () {
922
- var a = this.$.DOM;
923
- return [].concat(this.Default).concat(["display", "inline", "fontSize", (a.pluginSize + 3) + "px", "lineHeight", (a.pluginSize + 3) + "px"])
924
- },
925
- div: function () {
926
- var a = this.$.DOM;
927
- return [].concat(this.Default).concat(["display", "block", "width", a.divWidth + "px", "height", (a.pluginSize + 3) + "px", "fontSize", (a.pluginSize + 3) + "px", "lineHeight", (a.pluginSize + 3) + "px", "position", "absolute", "right", "9999px", "top", "-9999px"])
928
- },
929
- plugin: function (b) {
930
- var a = this.$.DOM;
931
- return "background-color:transparent;background-image:none;vertical-align:baseline;outline-style:none;border-style:none;padding:0px;margin:0px;visibility:" + (b ? "hidden;" : "visible;") + "display:inline;font-size:" + (a.pluginSize + 3) + "px;line-height:" + (a.pluginSize + 3) + "px;"
932
- },
933
- Default: ["backgroundColor", "transparent", "backgroundImage", "none", "verticalAlign", "baseline", "outlineStyle", "none", "borderStyle", "none", "padding", "0px", "margin", "0px", "visibility", "visible"]
934
- },
935
- insertDivInBody: function (a, h) {
936
- var j = this,
937
- d = j.$,
938
- b = "pd33993399",
939
- c = null,
940
- i = h ? window.top.document : window.document,
941
- f = i.getElementsByTagName("body")[0] || i.body;
942
- if (!f) {
943
1063
  try {
944
- i.write('<div id="' + b + '">.' + d.openTag + "/div>");
945
- c = i.getElementById(b)
946
- } catch (ex) {}
947
- }
948
- f = i.getElementsByTagName("body")[0] || i.body;
949
- if (f) {
950
- f.insertBefore(a, f.firstChild);
951
- if (c) {
952
- f.removeChild(c)
953
- }
954
- }
955
- },
956
- insert: function (b, i, g, h, c, p, n) {
957
- var r = this,
958
- f = r.$,
959
- s = document,
960
- u, l, o = s.createElement("span"),
961
- j, a;
962
- if (!f.isDefined(h)) {
963
- h = ""
964
- }
965
- if (f.isString(b) && (/[^\s]/).test(b)) {
966
- b = b.toLowerCase().replace(/\s/g, "");
967
- u = f.openTag + b + " ";
968
- u += 'style="' + r.getStyle.plugin(p) + '" ';
969
- var k = 1,
970
- t = 1;
971
- for (j = 0; j < i.length; j = j + 2) {
972
- if (/[^\s]/.test(i[j + 1])) {
973
- u += i[j] + '="' + i[j + 1] + '" '
974
- }
975
- if ((/width/i).test(i[j])) {
976
- k = 0
1064
+ if (k == s.pluginSize && (!d.browser.isIE || c === 4)) {
1065
+ if (!b.winLoaded && d.win.loaded) {
1066
+ return 1;
1067
+ }
1068
+ if (b.winLoaded && d.isNum(f)) {
1069
+ if (!d.isNum(b.count)) {
1070
+ b.count = f;
1071
+ }
1072
+ if (f - b.count >= 5) {
1073
+ return 1;
1074
+ }
1075
+ }
977
1076
  }
978
- if ((/height/i).test(i[j])) {
979
- t = 0
1077
+ } catch (ex) {}
1078
+ return b.pi ? -0.1 : 0;
1079
+ },
1080
+ setStyle(b, h) {
1081
+ var c = this,
1082
+ d = c.$,
1083
+ g = b.style,
1084
+ a;
1085
+ if (g && h) {
1086
+ for (a = 0; a < h.length; a = a + 2) {
1087
+ try {
1088
+ g[h[a]] = h[a + 1];
1089
+ } catch (ex) {}
980
1090
  }
981
1091
  }
982
- u += (k ? 'width="' + r.pluginSize + '" ' : "") + (t ? 'height="' + r.pluginSize + '" ' : "");
983
- u += ">";
984
- for (j = 0; j < g.length; j = j + 2) {
985
- if (/[^\s]/.test(g[j + 1])) {
986
- u += f.openTag + 'param name="' + g[j] + '" value="' + g[j + 1] + '" />'
1092
+ },
1093
+ getStyle: {
1094
+ $: 1,
1095
+ span() {
1096
+ var a = this.$.DOM;
1097
+ return []
1098
+ .concat(this.Default)
1099
+ .concat([
1100
+ "display",
1101
+ "inline",
1102
+ "fontSize",
1103
+ a.pluginSize + 3 + "px",
1104
+ "lineHeight",
1105
+ a.pluginSize + 3 + "px"
1106
+ ]);
1107
+ },
1108
+ div() {
1109
+ var a = this.$.DOM;
1110
+ return []
1111
+ .concat(this.Default)
1112
+ .concat([
1113
+ "display",
1114
+ "block",
1115
+ "width",
1116
+ a.divWidth + "px",
1117
+ "height",
1118
+ a.pluginSize + 3 + "px",
1119
+ "fontSize",
1120
+ a.pluginSize + 3 + "px",
1121
+ "lineHeight",
1122
+ a.pluginSize + 3 + "px",
1123
+ "position",
1124
+ "absolute",
1125
+ "right",
1126
+ "9999px",
1127
+ "top",
1128
+ "-9999px"
1129
+ ]);
1130
+ },
1131
+ plugin(b) {
1132
+ var a = this.$.DOM;
1133
+ return (
1134
+ "background-color:transparent;background-image:none;vertical-align:baseline;outline-style:none;border-style:none;padding:0px;margin:0px;visibility:" +
1135
+ (b ? "hidden;" : "visible;") +
1136
+ "display:inline;font-size:" +
1137
+ (a.pluginSize + 3) +
1138
+ "px;line-height:" +
1139
+ (a.pluginSize + 3) +
1140
+ "px;"
1141
+ );
1142
+ },
1143
+ Default: [
1144
+ "backgroundColor",
1145
+ "transparent",
1146
+ "backgroundImage",
1147
+ "none",
1148
+ "verticalAlign",
1149
+ "baseline",
1150
+ "outlineStyle",
1151
+ "none",
1152
+ "borderStyle",
1153
+ "none",
1154
+ "padding",
1155
+ "0px",
1156
+ "margin",
1157
+ "0px",
1158
+ "visibility",
1159
+ "visible"
1160
+ ]
1161
+ },
1162
+
1163
+ insertDivInBody(a, h) {
1164
+ var j = this,
1165
+ d = j.$,
1166
+ b = "pd33993399",
1167
+ c = null,
1168
+ i = h ? window.top.document : window.document,
1169
+ f = i.getElementsByTagName("body")[0] || i.body;
1170
+ if (!f) {
1171
+ try {
1172
+ i.write('<div id="' + b + '">.' + d.openTag + "/div>");
1173
+ c = i.getElementById(b);
1174
+ } catch (ex) {}
1175
+ }
1176
+ f = i.getElementsByTagName("body")[0] || i.body;
1177
+ if (f) {
1178
+ f.insertBefore(a, f.firstChild);
1179
+ if (c) {
1180
+ f.removeChild(c);
987
1181
  }
988
1182
  }
989
- u += h + f.openTag + "/" + b + ">"
990
- } else {
991
- b = "";
992
- u = h
993
- } if (!n) {
994
- r.initDiv()
995
- }
996
- var m = n || r.getDiv();
997
- l = {
998
- span: null,
999
- winLoaded: f.win.loaded,
1000
- tagName: b,
1001
- outerHTML: u,
1002
- DOM: r,
1003
- time: new Date().getTime(),
1004
- width: r.width,
1005
- obj: r.obj,
1006
- readyState: r.readyState,
1007
- objectProperty: r.objectProperty
1008
- };
1009
- if (m && m.parentNode) {
1010
- r.setStyle(o, r.getStyle.span());
1011
- m.appendChild(o);
1012
- try {
1013
- o.innerHTML = u
1014
- } catch (ex) {};
1015
- l.span = o;
1016
- l.winLoaded = f.win.loaded
1017
- }
1018
- return l
1019
- }
1020
- },
1021
- file: {
1022
- $: 1,
1023
- any: "fileStorageAny999",
1024
- valid: "fileStorageValid999",
1025
- save: function (d, f, c) {
1026
- var b = this,
1027
- e = b.$,
1028
- a;
1029
- if (d && e.isDefined(c)) {
1030
- if (!d[b.any]) {
1031
- d[b.any] = []
1183
+ },
1184
+ insert(b, i, g, h, c, p, n) {
1185
+ var r = this,
1186
+ f = r.$,
1187
+ s = document,
1188
+ u,
1189
+ l,
1190
+ o = s.createElement("span"),
1191
+ j,
1192
+ a;
1193
+ if (!f.isDefined(h)) {
1194
+ h = "";
1032
1195
  }
1033
- if (!d[b.valid]) {
1034
- d[b.valid] = []
1196
+ if (f.isString(b) && /[^\s]/.test(b)) {
1197
+ b = b.toLowerCase().replace(/\s/g, "");
1198
+ u = f.openTag + b + " ";
1199
+ u += 'style="' + r.getStyle.plugin(p) + '" ';
1200
+ var k = 1,
1201
+ t = 1;
1202
+ for (j = 0; j < i.length; j = j + 2) {
1203
+ if (/[^\s]/.test(i[j + 1])) {
1204
+ u += i[j] + '="' + i[j + 1] + '" ';
1205
+ }
1206
+ if (/width/i.test(i[j])) {
1207
+ k = 0;
1208
+ }
1209
+ if (/height/i.test(i[j])) {
1210
+ t = 0;
1211
+ }
1212
+ }
1213
+ u +=
1214
+ (k ? 'width="' + r.pluginSize + '" ' : "") +
1215
+ (t ? 'height="' + r.pluginSize + '" ' : "");
1216
+ u += ">";
1217
+ for (j = 0; j < g.length; j = j + 2) {
1218
+ if (/[^\s]/.test(g[j + 1])) {
1219
+ u +=
1220
+ f.openTag +
1221
+ 'param name="' +
1222
+ g[j] +
1223
+ '" value="' +
1224
+ g[j + 1] +
1225
+ '" />';
1226
+ }
1227
+ }
1228
+ u += h + f.openTag + "/" + b + ">";
1229
+ } else {
1230
+ b = "";
1231
+ u = h;
1035
1232
  }
1036
- d[b.any].push(c);
1037
- a = b.split(f, c);
1038
- if (a) {
1039
- d[b.valid].push(a)
1233
+ if (!n) {
1234
+ r.initDiv();
1040
1235
  }
1041
- }
1042
- },
1043
- getValidLength: function (a) {
1044
- return a && a[this.valid] ? a[this.valid].length : 0
1045
- },
1046
- getAnyLength: function (a) {
1047
- return a && a[this.any] ? a[this.any].length : 0
1048
- },
1049
- getValid: function (c, a) {
1050
- var b = this;
1051
- return c && c[b.valid] ? b.get(c[b.valid], a) : null
1052
- },
1053
- getAny: function (c, a) {
1054
- var b = this;
1055
- return c && c[b.any] ? b.get(c[b.any], a) : null
1056
- },
1057
- get: function (d, a) {
1058
- var c = d.length - 1,
1059
- b = this.$.isNum(a) ? a : c;
1060
- return (b < 0 || b > c) ? null : d[b]
1061
- },
1062
- split: function (g, c) {
1063
- var b = this,
1064
- e = b.$,
1065
- f = null,
1066
- a, d;
1067
- g = g ? g.replace(".", "\\.") : "";
1068
- d = new RegExp("^(.*[^\\/])(" + g + "\\s*)$");
1069
- if (e.isString(c) && d.test(c)) {
1070
- a = (RegExp.$1).split("/");
1071
- f = {
1072
- name: a[a.length - 1],
1073
- ext: RegExp.$2,
1074
- full: c
1236
+ var m = n || r.getDiv();
1237
+ l = {
1238
+ span: null,
1239
+ winLoaded: f.win.loaded,
1240
+ tagName: b,
1241
+ outerHTML: u,
1242
+ DOM: r,
1243
+ time: new Date().getTime(),
1244
+ width: r.width,
1245
+ obj: r.obj,
1246
+ readyState: r.readyState,
1247
+ objectProperty: r.objectProperty
1075
1248
  };
1076
- a[a.length - 1] = "";
1077
- f.path = a.join("/")
1249
+
1250
+ if (m && m.parentNode) {
1251
+ r.setStyle(o, r.getStyle.span());
1252
+ m.appendChild(o);
1253
+ try {
1254
+ o.innerHTML = u;
1255
+ } catch (ex) {}
1256
+ l.span = o;
1257
+ l.winLoaded = f.win.loaded;
1258
+ }
1259
+ return l;
1078
1260
  }
1079
- return f
1080
1261
  },
1081
- z: 0
1082
- },
1083
- Plugins: {
1084
- pdfjs: {
1262
+
1263
+ file: {
1085
1264
  $: 1,
1086
- OTF: null,
1087
- setPluginStatus: function () {
1265
+ any: "fileStorageAny999",
1266
+ valid: "fileStorageValid999",
1267
+ save(d, f, c) {
1088
1268
  var b = this,
1089
- c = b.$,
1090
- d = b.doc.result,
1091
- a = b.OTF;
1092
- b.version = null;
1093
- if (a == 3) {
1094
- b.installed = -0.5
1095
- } else {
1096
- b.installed = d > 0 ? 0 : -1
1097
- } if (b.verify && b.verify.isEnabled()) {
1098
- b.getVersionDone = 0
1099
- } else {
1100
- if (b.getVersionDone != 1) {
1101
- b.getVersionDone = (b.installed == -0.5 || (b.installed == -1 && b.doc.isDisabled() < 2)) ? 0 : 1
1269
+ e = b.$,
1270
+ a;
1271
+ if (d && e.isDefined(c)) {
1272
+ if (!d[b.any]) {
1273
+ d[b.any] = [];
1102
1274
  }
1103
- }
1104
- },
1105
- getVersion: function (c, b) {
1106
- var d = this,
1107
- e = d.$,
1108
- a = false,
1109
- g = d.verify,
1110
- h = d.NOTF,
1111
- f = d.doc;
1112
- if (d.getVersionDone === null) {
1113
- d.OTF = 0;
1114
- if (g) {
1115
- g.init()
1275
+ if (!d[b.valid]) {
1276
+ d[b.valid] = [];
1116
1277
  }
1117
- }
1118
- e.file.save(d, ".pdf", b);
1119
- if (d.getVersionDone === 0) {
1120
- if (g && g.isEnabled() && e.isNum(d.installed) && d.installed >= 0) {
1121
- return
1278
+ d[b.any].push(c);
1279
+ a = b.split(f, c);
1280
+ if (a) {
1281
+ d[b.valid].push(a);
1122
1282
  }
1123
1283
  }
1124
- if ((!a || e.dbug) && f.insertHTMLQuery() > 0) {
1125
- a = true
1284
+ },
1285
+ getValidLength(a) {
1286
+ return a && a[this.valid] ? a[this.valid].length : 0;
1287
+ },
1288
+ getAnyLength(a) {
1289
+ return a && a[this.any] ? a[this.any].length : 0;
1290
+ },
1291
+ getValid(c, a) {
1292
+ var b = this;
1293
+ return c && c[b.valid] ? b.get(c[b.valid], a) : null;
1294
+ },
1295
+ getAny(c, a) {
1296
+ var b = this;
1297
+ return c && c[b.any] ? b.get(c[b.any], a) : null;
1298
+ },
1299
+ get(d, a) {
1300
+ var c = d.length - 1,
1301
+ b = this.$.isNum(a) ? a : c;
1302
+ return b < 0 || b > c ? null : d[b];
1303
+ },
1304
+ split(g, c) {
1305
+ var b = this,
1306
+ e = b.$,
1307
+ f = null,
1308
+ a,
1309
+ d;
1310
+ g = g ? g.replace(".", "\\.") : "";
1311
+ d = new RegExp("^(.*[^\\/])(" + g + "\\s*)$");
1312
+ if (e.isString(c) && d.test(c)) {
1313
+ a = RegExp.$1.split("/");
1314
+ f = {
1315
+ name: a[a.length - 1],
1316
+ ext: RegExp.$2,
1317
+ full: c
1318
+ };
1319
+
1320
+ a[a.length - 1] = "";
1321
+ f.path = a.join("/");
1126
1322
  }
1127
- d.setPluginStatus()
1323
+ return f;
1128
1324
  },
1129
- doc: {
1325
+ z: 0
1326
+ },
1327
+
1328
+ Plugins: {
1329
+ pdfjs: {
1130
1330
  $: 1,
1131
- result: 0,
1132
- mimeType: "application/pdf",
1133
- mimeType_dummy: "application/dummymimepdf",
1134
- DummySpanTagHTML: 0,
1135
- HTML: 0,
1136
- DummyObjTagHTML1: 0,
1137
- isDisabled: function () {
1138
- var f = this,
1139
- e = f.$,
1140
- d = f.$$,
1141
- c = 0,
1142
- a = e.browser,
1143
- b;
1144
- if (d.OTF >= 2) {
1145
- c = 2
1331
+ OTF: null,
1332
+ setPluginStatus() {
1333
+ var b = this,
1334
+ c = b.$,
1335
+ d = b.doc.result,
1336
+ a = b.OTF;
1337
+ b.version = null;
1338
+ if (a == 3) {
1339
+ b.installed = -0.5;
1146
1340
  } else {
1147
- if (!e.DOM.isEnabled.objectTag() || !a.isGecko || e.compareNums(a.verGecko, e.formatNum("10")) < 0 || (e.compareNums(a.verGecko, e.formatNum("19")) < 0 && e.hasMimeType(f.mimeType))) {
1148
- if (!e.dbug) {
1149
- c = 2
1150
- }
1151
- }
1152
- } if (c < 2) {
1153
- b = e.file.getValid(d);
1154
- if (!b || !b.full) {
1155
- c = 1
1341
+ b.installed = d > 0 ? 0 : -1;
1342
+ }
1343
+ if (b.verify && b.verify.isEnabled()) {
1344
+ b.getVersionDone = 0;
1345
+ } else {
1346
+ if (b.getVersionDone != 1) {
1347
+ b.getVersionDone =
1348
+ b.installed == -0.5 ||
1349
+ (b.installed == -1 && b.doc.isDisabled() < 2)
1350
+ ? 0
1351
+ : 1;
1156
1352
  }
1157
1353
  }
1158
- return c
1159
1354
  },
1160
- tabIndex: null,
1161
- method: "",
1162
- queryObject: function (b) {
1163
- var j = this,
1164
- f = j.$,
1165
- g = j.$$,
1166
- d = j.HTML ? j.HTML.obj() : 0,
1167
- a, l, c, i, k = f.dbug && !f.win.loaded ? 0 : 1;
1168
- a = f.DOM.getTagStatus(j.HTML, j.DummySpanTagHTML, j.DummyObjTagHTML1, 0, b);
1169
- if ((!j.result || f.dbug) && a < 0) {
1170
- if (k) {
1171
- j.result = -1
1355
+ getVersion(c, b) {
1356
+ var d = this,
1357
+ e = d.$,
1358
+ a = false,
1359
+ g = d.verify,
1360
+ h = d.NOTF,
1361
+ f = d.doc;
1362
+ if (d.getVersionDone === null) {
1363
+ d.OTF = 0;
1364
+ if (g) {
1365
+ g.init();
1172
1366
  }
1173
- j.method += "1,"
1174
1367
  }
1175
- if ((!j.result || f.dbug) && a > 0 && !f.hasMimeType(j.mimeType)) {
1176
- if (k) {
1177
- j.result = 1
1368
+ e.file.save(d, ".pdf", b);
1369
+ if (d.getVersionDone === 0) {
1370
+ if (
1371
+ g &&
1372
+ g.isEnabled() &&
1373
+ e.isNum(d.installed) &&
1374
+ d.installed >= 0
1375
+ ) {
1376
+ return;
1178
1377
  }
1179
- j.method += "2,"
1180
1378
  }
1181
- try {
1182
- l = d ? d.tabIndex : null
1183
- } catch (ex) {}
1184
- if (!f.isNum(j.tabIndex) && f.isNum(l)) {
1185
- j.tabIndex = l
1379
+ if ((!a || e.dbug) && f.insertHTMLQuery() > 0) {
1380
+ a = true;
1186
1381
  }
1187
- if ((!j.result || f.dbug) && a > 0 && f.isNum(l) && f.isNum(j.tabIndex) && j.tabIndex !== l) {
1188
- if (k) {
1189
- j.result = 1
1190
- }
1191
- j.method += "4,"
1192
- };
1193
- return j.result
1382
+ d.setPluginStatus();
1194
1383
  },
1195
- insertHTMLQuery: function () {
1196
- var g = this,
1197
- f = g.$,
1198
- d = g.$$,
1199
- c, b, e = 1,
1200
- a = f.DOM.altHTML;
1201
- if (g.isDisabled()) {
1202
- return g.result
1203
- }
1204
- if (d.OTF < 2) {
1205
- d.OTF = 2
1206
- }
1207
- b = f.file.getValid(d).full;
1208
- if (!g.DummySpanTagHTML) {
1209
- g.DummySpanTagHTML = f.DOM.insert("", [], [], a, d, e)
1210
- }
1211
- if (!g.HTML) {
1212
- g.HTML = f.DOM.insert("object", ["type", g.mimeType, "data", b], ["src", b], a, d, e)
1213
- }
1214
- if (!g.DummyObjTagHTML1) {
1215
- g.DummyObjTagHTML1 = f.DOM.insert("object", ["type", g.mimeType_dummy], [], a, d, e)
1216
- }
1217
- g.queryObject();
1218
- if ((g.result > 0 || g.result < 0) && !f.dbug) {
1219
- return g.result
1220
- }
1221
- d.NOTF.init();
1222
- return g.result
1223
- }
1224
- },
1225
- NOTF: {
1226
- $: 1,
1227
- count: 0,
1228
- countMax: 25,
1229
- intervalLength: 250,
1230
- init: function () {
1231
- var d = this,
1232
- b = d.$,
1233
- a = d.$$,
1234
- c = a.doc;
1235
- if (a.OTF < 3 && c.HTML) {
1236
- a.OTF = 3;
1237
- d.onIntervalQuery = b.ev.handler(d.$$onIntervalQuery, d);
1238
- if (!b.win.loaded) {
1239
- b.win.loadPrvtHndlrs.push([d.onWinLoadQuery, d])
1384
+ doc: {
1385
+ $: 1,
1386
+ result: 0,
1387
+ mimeType: "application/pdf",
1388
+ mimeType_dummy: "application/dummymimepdf",
1389
+ DummySpanTagHTML: 0,
1390
+ HTML: 0,
1391
+ DummyObjTagHTML1: 0,
1392
+ isDisabled() {
1393
+ var f = this,
1394
+ e = f.$,
1395
+ d = f.$$,
1396
+ c = 0,
1397
+ a = e.browser,
1398
+ b;
1399
+ if (d.OTF >= 2) {
1400
+ c = 2;
1401
+ } else {
1402
+ if (
1403
+ !e.DOM.isEnabled.objectTag() ||
1404
+ !a.isGecko ||
1405
+ e.compareNums(a.verGecko, e.formatNum("10")) < 0 ||
1406
+ (e.compareNums(a.verGecko, e.formatNum("19")) < 0 &&
1407
+ e.hasMimeType(f.mimeType))
1408
+ ) {
1409
+ if (!e.dbug) {
1410
+ c = 2;
1411
+ }
1412
+ }
1240
1413
  }
1241
- setTimeout(d.onIntervalQuery, d.intervalLength)
1242
- }
1243
- },
1244
- $$onIntervalQuery: function (d) {
1245
- var b = d.$,
1246
- a = d.$$,
1247
- c = a.doc;
1248
- if (a.OTF == 3) {
1249
- c.queryObject(d.count);
1250
- if (c.result || (b.win.loaded && d.count > d.countMax)) {
1251
- d.queryCompleted()
1414
+ if (c < 2) {
1415
+ b = e.file.getValid(d);
1416
+ if (!b || !b.full) {
1417
+ c = 1;
1418
+ }
1252
1419
  }
1253
- }
1254
- d.count++;
1255
- if (a.OTF == 3) {
1256
- setTimeout(d.onIntervalQuery, d.intervalLength)
1420
+ return c;
1421
+ },
1422
+ tabIndex: null,
1423
+ method: "",
1424
+ queryObject(b) {
1425
+ var j = this,
1426
+ f = j.$,
1427
+ g = j.$$,
1428
+ d = j.HTML ? j.HTML.obj() : 0,
1429
+ a,
1430
+ l,
1431
+ c,
1432
+ i,
1433
+ k = f.dbug && !f.win.loaded ? 0 : 1;
1434
+ a = f.DOM.getTagStatus(
1435
+ j.HTML,
1436
+ j.DummySpanTagHTML,
1437
+ j.DummyObjTagHTML1,
1438
+ 0,
1439
+ b
1440
+ );
1441
+
1442
+ if ((!j.result || f.dbug) && a < 0) {
1443
+ if (k) {
1444
+ j.result = -1;
1445
+ }
1446
+ j.method += "1,";
1447
+ }
1448
+ if ((!j.result || f.dbug) && a > 0 && !f.hasMimeType(j.mimeType)) {
1449
+ if (k) {
1450
+ j.result = 1;
1451
+ }
1452
+ j.method += "2,";
1453
+ }
1454
+ try {
1455
+ l = d ? d.tabIndex : null;
1456
+ } catch (ex) {}
1457
+ if (!f.isNum(j.tabIndex) && f.isNum(l)) {
1458
+ j.tabIndex = l;
1459
+ }
1460
+ if (
1461
+ (!j.result || f.dbug) &&
1462
+ a > 0 &&
1463
+ f.isNum(l) &&
1464
+ f.isNum(j.tabIndex) &&
1465
+ j.tabIndex !== l
1466
+ ) {
1467
+ if (k) {
1468
+ j.result = 1;
1469
+ }
1470
+ j.method += "4,";
1471
+ }
1472
+ return j.result;
1473
+ },
1474
+ insertHTMLQuery() {
1475
+ var g = this,
1476
+ f = g.$,
1477
+ d = g.$$,
1478
+ c,
1479
+ b,
1480
+ e = 1,
1481
+ a = f.DOM.altHTML;
1482
+ if (g.isDisabled()) {
1483
+ return g.result;
1484
+ }
1485
+ if (d.OTF < 2) {
1486
+ d.OTF = 2;
1487
+ }
1488
+ b = f.file.getValid(d).full;
1489
+ if (!g.DummySpanTagHTML) {
1490
+ g.DummySpanTagHTML = f.DOM.insert("", [], [], a, d, e);
1491
+ }
1492
+ if (!g.HTML) {
1493
+ g.HTML = f.DOM.insert(
1494
+ "object",
1495
+ ["type", g.mimeType, "data", b],
1496
+ ["src", b],
1497
+ a,
1498
+ d,
1499
+ e
1500
+ );
1501
+ }
1502
+ if (!g.DummyObjTagHTML1) {
1503
+ g.DummyObjTagHTML1 = f.DOM.insert(
1504
+ "object",
1505
+ ["type", g.mimeType_dummy],
1506
+ [],
1507
+ a,
1508
+ d,
1509
+ e
1510
+ );
1511
+ }
1512
+ g.queryObject();
1513
+ if ((g.result > 0 || g.result < 0) && !f.dbug) {
1514
+ return g.result;
1515
+ }
1516
+ d.NOTF.init();
1517
+ return g.result;
1257
1518
  }
1258
1519
  },
1259
- onWinLoadQuery: function (b, d) {
1260
- var a = d.$$,
1261
- c = a.doc;
1262
- if (a.OTF == 3) {
1263
- c.queryObject(d.count);
1264
- d.queryCompleted()
1520
+
1521
+ NOTF: {
1522
+ $: 1,
1523
+ count: 0,
1524
+ countMax: 25,
1525
+ intervalLength: 250,
1526
+ init() {
1527
+ var d = this,
1528
+ b = d.$,
1529
+ a = d.$$,
1530
+ c = a.doc;
1531
+ if (a.OTF < 3 && c.HTML) {
1532
+ a.OTF = 3;
1533
+ d.onIntervalQuery = b.ev.handler(d.$$onIntervalQuery, d);
1534
+ if (!b.win.loaded) {
1535
+ b.win.loadPrvtHndlrs.push([d.onWinLoadQuery, d]);
1536
+ }
1537
+ setTimeout(d.onIntervalQuery, d.intervalLength);
1538
+ }
1539
+ },
1540
+ $$onIntervalQuery(d) {
1541
+ var b = d.$,
1542
+ a = d.$$,
1543
+ c = a.doc;
1544
+ if (a.OTF == 3) {
1545
+ c.queryObject(d.count);
1546
+ if (c.result || (b.win.loaded && d.count > d.countMax)) {
1547
+ d.queryCompleted();
1548
+ }
1549
+ }
1550
+ d.count++;
1551
+ if (a.OTF == 3) {
1552
+ setTimeout(d.onIntervalQuery, d.intervalLength);
1553
+ }
1554
+ },
1555
+ onWinLoadQuery(b, d) {
1556
+ var a = d.$$,
1557
+ c = a.doc;
1558
+ if (a.OTF == 3) {
1559
+ c.queryObject(d.count);
1560
+ d.queryCompleted();
1561
+ }
1562
+ },
1563
+ queryCompleted() {
1564
+ var d = this,
1565
+ b = d.$,
1566
+ a = d.$$,
1567
+ c = a.doc;
1568
+ if (a.OTF == 4) {
1569
+ return;
1570
+ }
1571
+ a.OTF = 4;
1572
+ a.setPluginStatus();
1573
+ if (b.onDetectionDone && a.DoneHndlrs) {
1574
+ b.ev.callArray(a.DoneHndlrs);
1575
+ }
1265
1576
  }
1266
1577
  },
1267
- queryCompleted: function () {
1268
- var d = this,
1269
- b = d.$,
1270
- a = d.$$,
1271
- c = a.doc;
1272
- if (a.OTF == 4) {
1273
- return
1274
- }
1275
- a.OTF = 4;
1276
- a.setPluginStatus();
1277
- if (b.onDetectionDone && a.DoneHndlrs) {
1278
- b.ev.callArray(a.DoneHndlrs)
1279
- }
1280
- }
1578
+
1579
+ zz: 0
1281
1580
  },
1581
+
1282
1582
  zz: 0
1283
- },
1284
- zz: 0
1285
- }
1286
- };
1287
- PluginDetect.INIT();
1288
- /**
1289
- * End of original code.
1290
- */
1583
+ }
1584
+ };
1585
+
1586
+ PluginDetect.INIT();
1587
+ /**
1588
+ * End of original code.
1589
+ */
1291
1590
 
1292
1591
  var origPluginDetect = PluginDetect;
1293
1592
 
1294
1593
  // Expose to qooxdoo
1295
- qx.bom.client.Pdfjs.__getPluginDetect = function() {
1594
+ qx.bom.client.Pdfjs.__getPluginDetect = function () {
1296
1595
  return origPluginDetect;
1297
1596
  };
1298
-
1299
- }).call(this);
1300
-
1597
+ }.call(this));