qooxview 1.9.9

Sign up to get free protection for your applications and to get access to all the features.
Files changed (605) hide show
  1. checksums.yaml +7 -0
  2. data/.project +13 -0
  3. data/.ruby-version +1 -0
  4. data/Gemfile +5 -0
  5. data/Gemfile.lock +89 -0
  6. data/LICENSE.txt +619 -0
  7. data/README.md +31 -0
  8. data/Rakefile +2 -0
  9. data/VERSIONS +12 -0
  10. data/lib/qooxview/additions.rb +161 -0
  11. data/lib/qooxview/config_yaml.rb +42 -0
  12. data/lib/qooxview/entity.rb +698 -0
  13. data/lib/qooxview/frontend/1build_generate +14 -0
  14. data/lib/qooxview/frontend/2src_generate +4 -0
  15. data/lib/qooxview/frontend/Manifest.json +34 -0
  16. data/lib/qooxview/frontend/README +19 -0
  17. data/lib/qooxview/frontend/UploadMgr/.project +11 -0
  18. data/lib/qooxview/frontend/UploadMgr/Manifest.json +34 -0
  19. data/lib/qooxview/frontend/UploadMgr/config.json +77 -0
  20. data/lib/qooxview/frontend/UploadMgr/demo/default/Manifest.json +34 -0
  21. data/lib/qooxview/frontend/UploadMgr/demo/default/config.json +84 -0
  22. data/lib/qooxview/frontend/UploadMgr/demo/default/generate.py +72 -0
  23. data/lib/qooxview/frontend/UploadMgr/demo/default/source/class/uploadmgr/demo/Application.js +224 -0
  24. data/lib/qooxview/frontend/UploadMgr/demo/default/source/class/uploadmgr/demo/simulation/DemoSimulation.js +44 -0
  25. data/lib/qooxview/frontend/UploadMgr/demo/default/source/class/uploadmgr/demo/test/DemoTest.js +55 -0
  26. data/lib/qooxview/frontend/UploadMgr/demo/default/source/class/uploadmgr/demo/theme/Appearance.js +18 -0
  27. data/lib/qooxview/frontend/UploadMgr/demo/default/source/class/uploadmgr/demo/theme/Color.js +18 -0
  28. data/lib/qooxview/frontend/UploadMgr/demo/default/source/class/uploadmgr/demo/theme/Decoration.js +18 -0
  29. data/lib/qooxview/frontend/UploadMgr/demo/default/source/class/uploadmgr/demo/theme/Font.js +18 -0
  30. data/lib/qooxview/frontend/UploadMgr/demo/default/source/class/uploadmgr/demo/theme/Theme.js +21 -0
  31. data/lib/qooxview/frontend/UploadMgr/demo/default/source/index.html +9 -0
  32. data/lib/qooxview/frontend/UploadMgr/demo/default/source/resource/uploadmgr/demo/test.png +0 -0
  33. data/lib/qooxview/frontend/UploadMgr/demo/default/source/script/uploadmgr.demo.d88b4fb45db4.js +1 -0
  34. data/lib/qooxview/frontend/UploadMgr/demo/default/source/script/uploadmgr.demo.js +211 -0
  35. data/lib/qooxview/frontend/UploadMgr/demo/default/source/translation/readme.txt +3 -0
  36. data/lib/qooxview/frontend/UploadMgr/generate.py +72 -0
  37. data/lib/qooxview/frontend/UploadMgr/server/LICENSE.TXT +3 -0
  38. data/lib/qooxview/frontend/UploadMgr/server/README.txt +3 -0
  39. data/lib/qooxview/frontend/UploadMgr/server/java/com/zenesis/qx/upload/DemoUploadServlet.java +176 -0
  40. data/lib/qooxview/frontend/UploadMgr/server/perl.cgi +62 -0
  41. data/lib/qooxview/frontend/UploadMgr/server/php.php +116 -0
  42. data/lib/qooxview/frontend/UploadMgr/source/class/com/zenesis/qx/upload/AbstractHandler.js +278 -0
  43. data/lib/qooxview/frontend/UploadMgr/source/class/com/zenesis/qx/upload/File.js +178 -0
  44. data/lib/qooxview/frontend/UploadMgr/source/class/com/zenesis/qx/upload/FormHandler.js +192 -0
  45. data/lib/qooxview/frontend/UploadMgr/source/class/com/zenesis/qx/upload/InputElement.js +68 -0
  46. data/lib/qooxview/frontend/UploadMgr/source/class/com/zenesis/qx/upload/MParameters.js +67 -0
  47. data/lib/qooxview/frontend/UploadMgr/source/class/com/zenesis/qx/upload/MUploadButton.js +40 -0
  48. data/lib/qooxview/frontend/UploadMgr/source/class/com/zenesis/qx/upload/UploadButton.js +35 -0
  49. data/lib/qooxview/frontend/UploadMgr/source/class/com/zenesis/qx/upload/UploadMgr.js +301 -0
  50. data/lib/qooxview/frontend/UploadMgr/source/class/com/zenesis/qx/upload/UploadToolbarButton.js +35 -0
  51. data/lib/qooxview/frontend/UploadMgr/source/class/com/zenesis/qx/upload/XhrHandler.js +176 -0
  52. data/lib/qooxview/frontend/UploadMgr/source/class/com/zenesis/qx/upload/simulation/DemoSimulation.js +44 -0
  53. data/lib/qooxview/frontend/UploadMgr/source/class/com/zenesis/qx/upload/test/DemoTest.js +55 -0
  54. data/lib/qooxview/frontend/UploadMgr/source/class/com/zenesis/qx/upload/theme/Appearance.js +18 -0
  55. data/lib/qooxview/frontend/UploadMgr/source/class/com/zenesis/qx/upload/theme/Color.js +18 -0
  56. data/lib/qooxview/frontend/UploadMgr/source/class/com/zenesis/qx/upload/theme/Decoration.js +18 -0
  57. data/lib/qooxview/frontend/UploadMgr/source/class/com/zenesis/qx/upload/theme/Font.js +18 -0
  58. data/lib/qooxview/frontend/UploadMgr/source/class/com/zenesis/qx/upload/theme/Theme.js +21 -0
  59. data/lib/qooxview/frontend/UploadMgr/source/index.html +9 -0
  60. data/lib/qooxview/frontend/UploadMgr/source/resource/com/zenesis/qx/upload/banner-bg.png +0 -0
  61. data/lib/qooxview/frontend/UploadMgr/source/resource/com/zenesis/qx/upload/banner.png +0 -0
  62. data/lib/qooxview/frontend/UploadMgr/source/resource/com/zenesis/qx/upload/logo.gif +0 -0
  63. data/lib/qooxview/frontend/UploadMgr/source/resource/com/zenesis/qx/upload/test.png +0 -0
  64. data/lib/qooxview/frontend/UploadMgr/source/translation/readme.txt +3 -0
  65. data/lib/qooxview/frontend/build/index.html +11 -0
  66. data/lib/qooxview/frontend/build/resource/frontend/test.png +0 -0
  67. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/app-header.png +0 -0
  68. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/arrows/down-invert.png +0 -0
  69. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/arrows/down-small-invert.png +0 -0
  70. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/arrows/down-small.png +0 -0
  71. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/arrows/down.png +0 -0
  72. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/arrows/forward.png +0 -0
  73. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/arrows/left-invert.png +0 -0
  74. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/arrows/left.png +0 -0
  75. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/arrows/rewind.png +0 -0
  76. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/arrows/right-invert.png +0 -0
  77. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/arrows/right.png +0 -0
  78. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/arrows/up-invert.png +0 -0
  79. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/arrows/up-small.png +0 -0
  80. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/arrows/up.png +0 -0
  81. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/arrows-combined.png +0 -0
  82. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/button-lr-combined.png +0 -0
  83. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/button-tb-combined.png +0 -0
  84. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/checkradio-combined.png +0 -0
  85. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/colorselector/brightness-field.png +0 -0
  86. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/colorselector/brightness-handle.gif +0 -0
  87. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/colorselector/huesaturation-field.jpg +0 -0
  88. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/colorselector/huesaturation-handle.gif +0 -0
  89. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/colorselector-combined.gif +0 -0
  90. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/cursors/alias.gif +0 -0
  91. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/cursors/copy.gif +0 -0
  92. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/cursors/move.gif +0 -0
  93. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/cursors/nodrop.gif +0 -0
  94. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/cursors-combined.gif +0 -0
  95. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-b.png +0 -0
  96. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-bl.png +0 -0
  97. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-br.png +0 -0
  98. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-c.png +0 -0
  99. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-checked-b.png +0 -0
  100. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-checked-bl.png +0 -0
  101. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-checked-br.png +0 -0
  102. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-checked-c.png +0 -0
  103. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-checked-focused-b.png +0 -0
  104. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-checked-focused-bl.png +0 -0
  105. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-checked-focused-br.png +0 -0
  106. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-checked-focused-c.png +0 -0
  107. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-checked-focused-l.png +0 -0
  108. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-checked-focused-r.png +0 -0
  109. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-checked-focused-t.png +0 -0
  110. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-checked-focused-tl.png +0 -0
  111. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-checked-focused-tr.png +0 -0
  112. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-checked-focused.png +0 -0
  113. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-checked-l.png +0 -0
  114. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-checked-r.png +0 -0
  115. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-checked-t.png +0 -0
  116. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-checked-tl.png +0 -0
  117. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-checked-tr.png +0 -0
  118. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-checked.png +0 -0
  119. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-disabled-b.png +0 -0
  120. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-disabled-bl.png +0 -0
  121. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-disabled-br.png +0 -0
  122. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-disabled-c.png +0 -0
  123. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-disabled-l.png +0 -0
  124. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-disabled-r.png +0 -0
  125. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-disabled-t.png +0 -0
  126. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-disabled-tl.png +0 -0
  127. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-disabled-tr.png +0 -0
  128. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-disabled.png +0 -0
  129. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-focused-b.png +0 -0
  130. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-focused-bl.png +0 -0
  131. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-focused-br.png +0 -0
  132. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-focused-c.png +0 -0
  133. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-focused-l.png +0 -0
  134. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-focused-r.png +0 -0
  135. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-focused-t.png +0 -0
  136. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-focused-tl.png +0 -0
  137. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-focused-tr.png +0 -0
  138. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-focused.png +0 -0
  139. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-hovered-b.png +0 -0
  140. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-hovered-bl.png +0 -0
  141. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-hovered-br.png +0 -0
  142. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-hovered-c.png +0 -0
  143. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-hovered-l.png +0 -0
  144. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-hovered-r.png +0 -0
  145. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-hovered-t.png +0 -0
  146. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-hovered-tl.png +0 -0
  147. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-hovered-tr.png +0 -0
  148. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-hovered.png +0 -0
  149. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-l.png +0 -0
  150. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-preselected-b.png +0 -0
  151. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-preselected-bl.png +0 -0
  152. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-preselected-br.png +0 -0
  153. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-preselected-c.png +0 -0
  154. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-preselected-focused-b.png +0 -0
  155. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-preselected-focused-bl.png +0 -0
  156. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-preselected-focused-br.png +0 -0
  157. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-preselected-focused-c.png +0 -0
  158. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-preselected-focused-l.png +0 -0
  159. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-preselected-focused-r.png +0 -0
  160. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-preselected-focused-t.png +0 -0
  161. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-preselected-focused-tl.png +0 -0
  162. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-preselected-focused-tr.png +0 -0
  163. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-preselected-focused.png +0 -0
  164. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-preselected-l.png +0 -0
  165. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-preselected-r.png +0 -0
  166. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-preselected-t.png +0 -0
  167. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-preselected-tl.png +0 -0
  168. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-preselected-tr.png +0 -0
  169. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-preselected.png +0 -0
  170. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-pressed-b.png +0 -0
  171. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-pressed-bl.png +0 -0
  172. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-pressed-br.png +0 -0
  173. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-pressed-c.png +0 -0
  174. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-pressed-l.png +0 -0
  175. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-pressed-r.png +0 -0
  176. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-pressed-t.png +0 -0
  177. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-pressed-tl.png +0 -0
  178. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-pressed-tr.png +0 -0
  179. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-pressed.png +0 -0
  180. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-r.png +0 -0
  181. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-t.png +0 -0
  182. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-tl.png +0 -0
  183. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-tr.png +0 -0
  184. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button.png +0 -0
  185. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/checkbox-checked-disabled.png +0 -0
  186. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/checkbox-checked-focused-invalid.png +0 -0
  187. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/checkbox-checked-focused.png +0 -0
  188. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/checkbox-checked-hovered-invalid.png +0 -0
  189. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/checkbox-checked-hovered.png +0 -0
  190. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/checkbox-checked-invalid.png +0 -0
  191. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/checkbox-checked-pressed-invalid.png +0 -0
  192. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/checkbox-checked-pressed.png +0 -0
  193. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/checkbox-checked.png +0 -0
  194. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/checkbox-disabled.png +0 -0
  195. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/checkbox-focused-invalid.png +0 -0
  196. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/checkbox-focused.png +0 -0
  197. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/checkbox-hovered-invalid.png +0 -0
  198. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/checkbox-hovered.png +0 -0
  199. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/checkbox-invalid.png +0 -0
  200. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/checkbox-pressed-invalid.png +0 -0
  201. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/checkbox-pressed.png +0 -0
  202. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/checkbox-undetermined-disabled.png +0 -0
  203. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/checkbox-undetermined-focused-invalid.png +0 -0
  204. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/checkbox-undetermined-focused.png +0 -0
  205. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/checkbox-undetermined-hovered-invalid.png +0 -0
  206. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/checkbox-undetermined-hovered.png +0 -0
  207. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/checkbox-undetermined-invalid.png +0 -0
  208. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/checkbox-undetermined.png +0 -0
  209. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/checkbox.png +0 -0
  210. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/checked-disabled.png +0 -0
  211. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/checked.png +0 -0
  212. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/input-focused.png +0 -0
  213. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/input.png +0 -0
  214. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/radiobutton-checked-disabled.png +0 -0
  215. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/radiobutton-checked-focused-invalid.png +0 -0
  216. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/radiobutton-checked-focused.png +0 -0
  217. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/radiobutton-checked-hovered-invalid.png +0 -0
  218. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/radiobutton-checked-hovered.png +0 -0
  219. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/radiobutton-checked-invalid.png +0 -0
  220. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/radiobutton-checked-pressed-invalid.png +0 -0
  221. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/radiobutton-checked-pressed.png +0 -0
  222. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/radiobutton-checked.png +0 -0
  223. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/radiobutton-disabled.png +0 -0
  224. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/radiobutton-focused-invalid.png +0 -0
  225. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/radiobutton-focused.png +0 -0
  226. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/radiobutton-hovered-invalid.png +0 -0
  227. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/radiobutton-hovered.png +0 -0
  228. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/radiobutton-invalid.png +0 -0
  229. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/radiobutton-pressed-invalid.png +0 -0
  230. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/radiobutton-pressed.png +0 -0
  231. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/radiobutton.png +0 -0
  232. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/tooltip-error-arrow-right.png +0 -0
  233. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/tooltip-error-arrow.png +0 -0
  234. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/tooltip-error-b.png +0 -0
  235. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/tooltip-error-bl.png +0 -0
  236. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/tooltip-error-br.png +0 -0
  237. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/tooltip-error-c.png +0 -0
  238. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/tooltip-error-l.png +0 -0
  239. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/tooltip-error-r.png +0 -0
  240. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/tooltip-error-t.png +0 -0
  241. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/tooltip-error-tl.png +0 -0
  242. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/tooltip-error-tr.png +0 -0
  243. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/tooltip-error.png +0 -0
  244. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/undetermined-disabled.png +0 -0
  245. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/undetermined.png +0 -0
  246. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/group-item.png +0 -0
  247. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/groupbox/groupbox-b.png +0 -0
  248. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/groupbox/groupbox-bl.png +0 -0
  249. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/groupbox/groupbox-br.png +0 -0
  250. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/groupbox/groupbox-c.png +0 -0
  251. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/groupbox/groupbox-l.png +0 -0
  252. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/groupbox/groupbox-r.png +0 -0
  253. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/groupbox/groupbox-t.png +0 -0
  254. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/groupbox/groupbox-tl.png +0 -0
  255. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/groupbox/groupbox-tr.png +0 -0
  256. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/groupbox/groupbox.png +0 -0
  257. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/groupbox-lr-combined.png +0 -0
  258. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/groupbox-tb-combined.png +0 -0
  259. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/menu/background.png +0 -0
  260. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/menu/bar-background.png +0 -0
  261. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/menu/checkbox-invert.gif +0 -0
  262. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/menu/checkbox.gif +0 -0
  263. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/menu/radiobutton-invert.gif +0 -0
  264. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/menu/radiobutton.gif +0 -0
  265. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/menu-background-combined.png +0 -0
  266. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/menu-checkradio-combined.gif +0 -0
  267. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/pane/pane-b.png +0 -0
  268. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/pane/pane-bl.png +0 -0
  269. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/pane/pane-br.png +0 -0
  270. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/pane/pane-c.png +0 -0
  271. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/pane/pane-l.png +0 -0
  272. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/pane/pane-r.png +0 -0
  273. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/pane/pane-t.png +0 -0
  274. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/pane/pane-tl.png +0 -0
  275. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/pane/pane-tr.png +0 -0
  276. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/pane/pane.png +0 -0
  277. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/pane-lr-combined.png +0 -0
  278. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/pane-tb-combined.png +0 -0
  279. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/scrollbar/scrollbar-bg-horizontal.png +0 -0
  280. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/scrollbar/scrollbar-bg-pressed-horizontal.png +0 -0
  281. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/scrollbar/scrollbar-bg-pressed-vertical.png +0 -0
  282. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/scrollbar/scrollbar-bg-vertical.png +0 -0
  283. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/scrollbar/scrollbar-button-bg-horizontal.png +0 -0
  284. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/scrollbar/scrollbar-button-bg-vertical.png +0 -0
  285. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/scrollbar/scrollbar-down.png +0 -0
  286. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/scrollbar/scrollbar-left.png +0 -0
  287. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/scrollbar/scrollbar-right.png +0 -0
  288. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/scrollbar/scrollbar-up.png +0 -0
  289. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/scrollbar/slider-knob-background.png +0 -0
  290. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/scrollbar-combined.png +0 -0
  291. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/selection.png +0 -0
  292. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/shadow/shadow-b.png +0 -0
  293. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/shadow/shadow-bl.png +0 -0
  294. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/shadow/shadow-br.png +0 -0
  295. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/shadow/shadow-c.png +0 -0
  296. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/shadow/shadow-l.png +0 -0
  297. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/shadow/shadow-r.png +0 -0
  298. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/shadow/shadow-small-b.png +0 -0
  299. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/shadow/shadow-small-bl.png +0 -0
  300. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/shadow/shadow-small-br.png +0 -0
  301. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/shadow/shadow-small-c.png +0 -0
  302. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/shadow/shadow-small-l.png +0 -0
  303. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/shadow/shadow-small-r.png +0 -0
  304. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/shadow/shadow-small-t.png +0 -0
  305. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/shadow/shadow-small-tl.png +0 -0
  306. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/shadow/shadow-small-tr.png +0 -0
  307. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/shadow/shadow-small.png +0 -0
  308. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/shadow/shadow-t.png +0 -0
  309. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/shadow/shadow-tl.png +0 -0
  310. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/shadow/shadow-tr.png +0 -0
  311. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/shadow/shadow.png +0 -0
  312. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/shadow-lr-combined.png +0 -0
  313. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/shadow-small-lr-combined.png +0 -0
  314. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/shadow-small-tb-combined.png +0 -0
  315. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/shadow-tb-combined.png +0 -0
  316. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/splitpane/knob-horizontal.png +0 -0
  317. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/splitpane/knob-vertical.png +0 -0
  318. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/splitpane-knobs-combined.png +0 -0
  319. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/table/ascending.png +0 -0
  320. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/table/boolean-false.png +0 -0
  321. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/table/boolean-true.png +0 -0
  322. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/table/descending.png +0 -0
  323. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/table/header-cell.png +0 -0
  324. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/table/select-column-order.png +0 -0
  325. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/table-combined.png +0 -0
  326. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-bottom-active-b.png +0 -0
  327. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-bottom-active-bl.png +0 -0
  328. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-bottom-active-br.png +0 -0
  329. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-bottom-active-c.png +0 -0
  330. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-bottom-active-l.png +0 -0
  331. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-bottom-active-r.png +0 -0
  332. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-bottom-active-t.png +0 -0
  333. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-bottom-active-tl.png +0 -0
  334. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-bottom-active-tr.png +0 -0
  335. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-bottom-active.png +0 -0
  336. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-bottom-inactive-b.png +0 -0
  337. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-bottom-inactive-bl.png +0 -0
  338. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-bottom-inactive-br.png +0 -0
  339. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-bottom-inactive-c.png +0 -0
  340. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-bottom-inactive-l.png +0 -0
  341. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-bottom-inactive-r.png +0 -0
  342. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-bottom-inactive-t.png +0 -0
  343. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-bottom-inactive-tl.png +0 -0
  344. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-bottom-inactive-tr.png +0 -0
  345. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-bottom-inactive.png +0 -0
  346. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-left-active-b.png +0 -0
  347. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-left-active-bl.png +0 -0
  348. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-left-active-br.png +0 -0
  349. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-left-active-c.png +0 -0
  350. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-left-active-l.png +0 -0
  351. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-left-active-r.png +0 -0
  352. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-left-active-t.png +0 -0
  353. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-left-active-tl.png +0 -0
  354. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-left-active-tr.png +0 -0
  355. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-left-active.png +0 -0
  356. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-left-inactive-b.png +0 -0
  357. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-left-inactive-bl.png +0 -0
  358. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-left-inactive-br.png +0 -0
  359. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-left-inactive-c.png +0 -0
  360. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-left-inactive-l.png +0 -0
  361. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-left-inactive-r.png +0 -0
  362. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-left-inactive-t.png +0 -0
  363. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-left-inactive-tl.png +0 -0
  364. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-left-inactive-tr.png +0 -0
  365. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-left-inactive.png +0 -0
  366. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-right-active-b.png +0 -0
  367. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-right-active-bl.png +0 -0
  368. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-right-active-br.png +0 -0
  369. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-right-active-c.png +0 -0
  370. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-right-active-l.png +0 -0
  371. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-right-active-r.png +0 -0
  372. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-right-active-t.png +0 -0
  373. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-right-active-tl.png +0 -0
  374. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-right-active-tr.png +0 -0
  375. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-right-active.png +0 -0
  376. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-right-inactive-b.png +0 -0
  377. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-right-inactive-bl.png +0 -0
  378. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-right-inactive-br.png +0 -0
  379. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-right-inactive-c.png +0 -0
  380. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-right-inactive-l.png +0 -0
  381. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-right-inactive-r.png +0 -0
  382. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-right-inactive-t.png +0 -0
  383. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-right-inactive-tl.png +0 -0
  384. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-right-inactive-tr.png +0 -0
  385. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-right-inactive.png +0 -0
  386. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-top-active-b.png +0 -0
  387. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-top-active-bl.png +0 -0
  388. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-top-active-br.png +0 -0
  389. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-top-active-c.png +0 -0
  390. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-top-active-l.png +0 -0
  391. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-top-active-r.png +0 -0
  392. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-top-active-t.png +0 -0
  393. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-top-active-tl.png +0 -0
  394. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-top-active-tr.png +0 -0
  395. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-top-active.png +0 -0
  396. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-top-inactive-b.png +0 -0
  397. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-top-inactive-bl.png +0 -0
  398. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-top-inactive-br.png +0 -0
  399. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-top-inactive-c.png +0 -0
  400. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-top-inactive-l.png +0 -0
  401. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-top-inactive-r.png +0 -0
  402. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-top-inactive-t.png +0 -0
  403. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-top-inactive-tl.png +0 -0
  404. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-top-inactive-tr.png +0 -0
  405. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-top-inactive.png +0 -0
  406. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tabview-pane-b.png +0 -0
  407. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tabview-pane-bl.png +0 -0
  408. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tabview-pane-br.png +0 -0
  409. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tabview-pane-c.png +0 -0
  410. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tabview-pane-l.png +0 -0
  411. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tabview-pane-r.png +0 -0
  412. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tabview-pane-t.png +0 -0
  413. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tabview-pane-tl.png +0 -0
  414. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tabview-pane-tr.png +0 -0
  415. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tabview-pane.png +0 -0
  416. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview-button-bottom-active-lr-combined.png +0 -0
  417. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview-button-bottom-active-tb-combined.png +0 -0
  418. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview-button-bottom-inactive-b-combined.png +0 -0
  419. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview-button-bottom-inactive-lr-combined.png +0 -0
  420. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview-button-bottom-inactive-t-combined.png +0 -0
  421. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview-button-left-active-lr-combined.png +0 -0
  422. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview-button-left-active-tb-combined.png +0 -0
  423. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview-button-left-inactive-b-combined.png +0 -0
  424. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview-button-left-inactive-lr-combined.png +0 -0
  425. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview-button-left-inactive-t-combined.png +0 -0
  426. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview-button-right-active-lr-combined.png +0 -0
  427. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview-button-right-active-tb-combined.png +0 -0
  428. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview-button-right-inactive-b-combined.png +0 -0
  429. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview-button-right-inactive-lr-combined.png +0 -0
  430. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview-button-right-inactive-t-combined.png +0 -0
  431. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview-button-top-active-lr-combined.png +0 -0
  432. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview-button-top-active-tb-combined.png +0 -0
  433. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview-button-top-inactive-b-combined.png +0 -0
  434. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview-button-top-inactive-lr-combined.png +0 -0
  435. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview-button-top-inactive-t-combined.png +0 -0
  436. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview-pane-lr-combined.png +0 -0
  437. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview-pane-tb-combined.png +0 -0
  438. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/toolbar/toolbar-gradient-blue.png +0 -0
  439. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/toolbar/toolbar-gradient.png +0 -0
  440. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/toolbar/toolbar-handle-knob.gif +0 -0
  441. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/toolbar/toolbar-part.gif +0 -0
  442. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/toolbar-combined.png +0 -0
  443. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tooltip-error-lr-combined.png +0 -0
  444. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tooltip-error-tb-combined.png +0 -0
  445. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tree/closed-selected.png +0 -0
  446. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tree/closed.png +0 -0
  447. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tree/open-selected.png +0 -0
  448. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tree/open.png +0 -0
  449. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tree-combined.png +0 -0
  450. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/captionbar-active-b.png +0 -0
  451. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/captionbar-active-bl.png +0 -0
  452. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/captionbar-active-br.png +0 -0
  453. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/captionbar-active-c.png +0 -0
  454. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/captionbar-active-l.png +0 -0
  455. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/captionbar-active-r.png +0 -0
  456. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/captionbar-active-t.png +0 -0
  457. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/captionbar-active-tl.png +0 -0
  458. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/captionbar-active-tr.png +0 -0
  459. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/captionbar-active.png +0 -0
  460. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/captionbar-inactive-b.png +0 -0
  461. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/captionbar-inactive-bl.png +0 -0
  462. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/captionbar-inactive-br.png +0 -0
  463. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/captionbar-inactive-c.png +0 -0
  464. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/captionbar-inactive-l.png +0 -0
  465. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/captionbar-inactive-r.png +0 -0
  466. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/captionbar-inactive-t.png +0 -0
  467. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/captionbar-inactive-tl.png +0 -0
  468. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/captionbar-inactive-tr.png +0 -0
  469. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/captionbar-inactive.png +0 -0
  470. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/close-active-hovered.png +0 -0
  471. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/close-active.png +0 -0
  472. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/close-inactive.png +0 -0
  473. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/maximize-active-hovered.png +0 -0
  474. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/maximize-active.png +0 -0
  475. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/maximize-inactive.png +0 -0
  476. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/minimize-active-hovered.png +0 -0
  477. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/minimize-active.png +0 -0
  478. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/minimize-inactive.png +0 -0
  479. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/restore-active-hovered.png +0 -0
  480. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/restore-active.png +0 -0
  481. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/restore-inactive.png +0 -0
  482. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/statusbar-b.png +0 -0
  483. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/statusbar-bl.png +0 -0
  484. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/statusbar-br.png +0 -0
  485. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/statusbar-c.png +0 -0
  486. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/statusbar-l.png +0 -0
  487. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/statusbar-r.png +0 -0
  488. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/statusbar-t.png +0 -0
  489. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/statusbar-tl.png +0 -0
  490. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/statusbar-tr.png +0 -0
  491. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/statusbar.png +0 -0
  492. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window-captionbar-buttons-combined.png +0 -0
  493. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window-captionbar-lr-active-combined.png +0 -0
  494. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window-captionbar-lr-inactive-combined.png +0 -0
  495. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window-captionbar-tb-active-combined.png +0 -0
  496. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window-captionbar-tb-inactive-combined.png +0 -0
  497. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window-statusbar-lr-combined.png +0 -0
  498. data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window-statusbar-tb-combined.png +0 -0
  499. data/lib/qooxview/frontend/build/resource/qx/icon/Tango/16/actions/dialog-cancel.png +0 -0
  500. data/lib/qooxview/frontend/build/resource/qx/icon/Tango/16/actions/dialog-ok.png +0 -0
  501. data/lib/qooxview/frontend/build/resource/qx/icon/Tango/16/actions/view-refresh.png +0 -0
  502. data/lib/qooxview/frontend/build/resource/qx/icon/Tango/16/actions/window-close.png +0 -0
  503. data/lib/qooxview/frontend/build/resource/qx/icon/Tango/16/apps/office-calendar.png +0 -0
  504. data/lib/qooxview/frontend/build/resource/qx/icon/Tango/16/apps/utilities-color-chooser.png +0 -0
  505. data/lib/qooxview/frontend/build/resource/qx/icon/Tango/16/mimetypes/office-document.png +0 -0
  506. data/lib/qooxview/frontend/build/resource/qx/icon/Tango/16/places/folder-open.png +0 -0
  507. data/lib/qooxview/frontend/build/resource/qx/icon/Tango/16/places/folder.png +0 -0
  508. data/lib/qooxview/frontend/build/resource/qx/icon/Tango/22/mimetypes/office-document.png +0 -0
  509. data/lib/qooxview/frontend/build/resource/qx/icon/Tango/22/places/folder-open.png +0 -0
  510. data/lib/qooxview/frontend/build/resource/qx/icon/Tango/22/places/folder.png +0 -0
  511. data/lib/qooxview/frontend/build/resource/qx/icon/Tango/32/mimetypes/office-document.png +0 -0
  512. data/lib/qooxview/frontend/build/resource/qx/icon/Tango/32/places/folder-open.png +0 -0
  513. data/lib/qooxview/frontend/build/resource/qx/icon/Tango/32/places/folder.png +0 -0
  514. data/lib/qooxview/frontend/build/resource/qx/static/blank.gif +0 -0
  515. data/lib/qooxview/frontend/build/resource/qx/static/blank.png +0 -0
  516. data/lib/qooxview/frontend/build/script/frontend.js +213 -0
  517. data/lib/qooxview/frontend/config.json +58 -0
  518. data/lib/qooxview/frontend/generate.py +149 -0
  519. data/lib/qooxview/frontend/mklink +2 -0
  520. data/lib/qooxview/frontend/readme.txt +11 -0
  521. data/lib/qooxview/frontend/source/class/frontend/Application.js +84 -0
  522. data/lib/qooxview/frontend/source/class/frontend/LAYOUT +120 -0
  523. data/lib/qooxview/frontend/source/class/frontend/Lib/Fields.js +1486 -0
  524. data/lib/qooxview/frontend/source/class/frontend/Lib/RPC.js +104 -0
  525. data/lib/qooxview/frontend/source/class/frontend/Lib/TimerF.js +63 -0
  526. data/lib/qooxview/frontend/source/class/frontend/Views/Form.js +150 -0
  527. data/lib/qooxview/frontend/source/class/frontend/Views/Ltab.js +633 -0
  528. data/lib/qooxview/frontend/source/class/frontend/__init__.js +6 -0
  529. data/lib/qooxview/frontend/source/class/frontend/globals.js +51 -0
  530. data/lib/qooxview/frontend/source/class/frontend/simulation/DemoSimulation.js +42 -0
  531. data/lib/qooxview/frontend/source/class/frontend/test/DemoTest.js +55 -0
  532. data/lib/qooxview/frontend/source/class/frontend/theme/Appearance.js +18 -0
  533. data/lib/qooxview/frontend/source/class/frontend/theme/Color.js +18 -0
  534. data/lib/qooxview/frontend/source/class/frontend/theme/Decoration.js +18 -0
  535. data/lib/qooxview/frontend/source/class/frontend/theme/Font.js +18 -0
  536. data/lib/qooxview/frontend/source/class/frontend/theme/Theme.js +21 -0
  537. data/lib/qooxview/frontend/source/index.html +11 -0
  538. data/lib/qooxview/frontend/source/resource/frontend/test.png +0 -0
  539. data/lib/qooxview/frontend/source/translation/readme.txt +3 -0
  540. data/lib/qooxview/helpers/config_base.rb +264 -0
  541. data/lib/qooxview/helpers/icc.rb +222 -0
  542. data/lib/qooxview/helpers/make_steps.rb +77 -0
  543. data/lib/qooxview/helpers/migration_version.rb +18 -0
  544. data/lib/qooxview/helpers/open_print.rb +286 -0
  545. data/lib/qooxview/helpers/permission.rb +146 -0
  546. data/lib/qooxview/helpers/qoox_parser.rb +54 -0
  547. data/lib/qooxview/helpers/session.rb +68 -0
  548. data/lib/qooxview/helpers/static.rb +23 -0
  549. data/lib/qooxview/helpers/upload_files.rb +27 -0
  550. data/lib/qooxview/helpers/vtlist_pane.rb +158 -0
  551. data/lib/qooxview/helpers/welcome.rb +55 -0
  552. data/lib/qooxview/qooxview.rb +175 -0
  553. data/lib/qooxview/rpcqooxdoo.rb +395 -0
  554. data/lib/qooxview/storage_handler.rb +455 -0
  555. data/lib/qooxview/storage_type.rb +129 -0
  556. data/lib/qooxview/storages/csv.rb +170 -0
  557. data/lib/qooxview/storages/ldap.rb +238 -0
  558. data/lib/qooxview/storages/sqlite.rb +198 -0
  559. data/lib/qooxview/value.rb +202 -0
  560. data/lib/qooxview/version.rb +3 -0
  561. data/lib/qooxview/view.rb +904 -0
  562. data/lib/qooxview.rb +83 -0
  563. data/qooxview.gemspec +50 -0
  564. data/test/benchmark_creation.rb +37 -0
  565. data/test/config.yaml +36 -0
  566. data/test/entities/config.rb +33 -0
  567. data/test/entities/course.rb +28 -0
  568. data/test/entities/databases.rb +17 -0
  569. data/test/entities/doubleCase.rb +12 -0
  570. data/test/entities/dummies.rb +24 -0
  571. data/test/entities/inventory.rb +6 -0
  572. data/test/entities/needs.rb +20 -0
  573. data/test/entities/person.rb +73 -0
  574. data/test/file_binary.bin +0 -0
  575. data/test/files/print_formulas.ods +0 -0
  576. data/test/files/print_formulas_2.ods +0 -0
  577. data/test/files/student_card.odg +0 -0
  578. data/test/gettext.po +24 -0
  579. data/test/gettext.pot +0 -0
  580. data/test/messages.mo +0 -0
  581. data/test/po/fr/LC_MESSAGES/gettext.mo +0 -0
  582. data/test/qooxdoo-layout-frontend.js +49 -0
  583. data/test/qv_configbase.rb +98 -0
  584. data/test/qv_entity.rb +271 -0
  585. data/test/qv_gettext.rb +28 -0
  586. data/test/qv_helpers.rb +173 -0
  587. data/test/qv_icc.rb +60 -0
  588. data/test/qv_migration.rb +130 -0
  589. data/test/qv_permission.rb +34 -0
  590. data/test/qv_print.rb +73 -0
  591. data/test/qv_session.rb +29 -0
  592. data/test/qv_sqlite.rb +73 -0
  593. data/test/qv_store_csv.rb +86 -0
  594. data/test/qv_stype.rb +41 -0
  595. data/test/qv_view.rb +204 -0
  596. data/test/st_dummy.rb +30 -0
  597. data/test/test.rb +49 -0
  598. data/test/views/aview.rb +24 -0
  599. data/test/views/bview.rb +10 -0
  600. data/test/views/configviews.rb +19 -0
  601. data/test/views/courseshow.rb +11 -0
  602. data/test/views/cview.rb +22 -0
  603. data/test/views/login.rb +15 -0
  604. data/test/views/print.rb +10 -0
  605. metadata +1068 -0
@@ -0,0 +1,698 @@
1
+ # An entity is mapped to more or less one service in the real world.
2
+ # It gives functions to easily handle different aspects of the arguments,
3
+ # which can be stored in it's own database, LDAP, or whatever else.
4
+ # Furthermore an easy interface for the viewers is generated, so that
5
+ # multiple viewers can display the same part of an Entity without having
6
+ # to copy code all over.
7
+
8
+ require 'qooxview/value'
9
+ require 'qooxview/storage_type'
10
+ require 'qooxview/storage_handler'
11
+ Dir.glob(__dir__+'/storages/*').each { |f|
12
+ require f
13
+ }
14
+
15
+ class Array
16
+ def sortk
17
+ sort { |a, b| a.to_s <=> b.to_s }
18
+ end
19
+ end
20
+
21
+ class Entities < RPCQooxdooService
22
+ @@all = {}
23
+
24
+ include StorageHandler
25
+
26
+ attr_accessor :data_class, :data_instances, :blocks, :data_field_id,
27
+ :storage, :data, :name, :keys,
28
+ :save_after_create, :values, :changed, :null_allowed,
29
+ :loading, :last_id, :is_loaded
30
+
31
+ def initialize
32
+ begin
33
+ @data_class = eval(singular(self.class.name))
34
+ rescue Exception => e
35
+ # Just in case the data-class is not created yet
36
+ eval("class #{singular(self.class.name)} < Entity\nend", TOPLEVEL_BINDING)
37
+ @data_class = eval(singular(self.class.name))
38
+ end
39
+ @storage = nil
40
+ @last_id = 1
41
+ @save_after_create = false
42
+ @changed = false
43
+ @null_allowed = false
44
+ @loading = false
45
+ @is_loaded = false
46
+
47
+ if @data_class != 'Entity'
48
+ @@all[@data_class] = self
49
+ dputs(4) { "Initializing #{self.class.name} with data_class = #{@data_class}" }
50
+
51
+ # Initialize the basic variables
52
+ @blocks = {}
53
+ @values = []
54
+ @data_instances = {}
55
+ @default_type = :CSV
56
+ @keys = {}
57
+
58
+ # Check for config of this special class
59
+ # dputs( 2 ){ "Class is: #{self.class.name.to_sym.inspect}" }
60
+ if @config = get_config(nil, :Entities, self.class.name)
61
+ #@config = $config[:Entities][self.class.name.to_sym]
62
+ dputs(3) { "Writing config #{@config.inspect} for #{self.class.name}" }
63
+ @config.each { |k, v|
64
+ dputs(3) { "Setting #{k} = #{v}" }
65
+ case v
66
+ when /true|false/
67
+ instance_variable_set("@#{k.to_s}", eval(v))
68
+ else
69
+ instance_variable_set("@#{k.to_s}", v)
70
+ end
71
+ self.class.send(:attr_reader, k)
72
+ }
73
+ else
74
+ @config = nil
75
+ end
76
+
77
+ # Stuff for the StorageHandler
78
+ @storage = {}
79
+ @data = {}
80
+ @name = singular(self.class.name)
81
+ @data_field_id = "#{@name}_id".downcase.to_sym
82
+ if @@all.keys.find { |k| k.to_s == 'Static' } &&
83
+ @name != 'Static'
84
+ @static = Statics.get_hash("Entities.#{@name}")
85
+ end
86
+ dputs(3) { "#{@name}: #{@static.inspect}" }
87
+
88
+ # Now call the setup_data to initialize the fields
89
+ value_block :default
90
+ setup_data()
91
+
92
+ # Finally adding @data_field_id to all storage-types
93
+ dputs(4) { "Adding #{@data_field_id} to block" }
94
+ value_block @data_field_id
95
+ value_int_ALL @data_field_id
96
+
97
+ dputs(4) { 'Configuring all storages' }
98
+ @storage.each { |k, s|
99
+ dputs(4) { "Configuring #{k} #{s.inspect}" }
100
+ s.configure(s.config)
101
+ }
102
+ dputs(4) { "Block is now: #{@blocks.inspect}" }
103
+ end
104
+ end
105
+
106
+ # Here comes the definition of the data used in that Entity. If the
107
+ # return-value is true, the data is loaded automatically
108
+ def setup_data
109
+ return false
110
+ end
111
+
112
+ # Gets the singular of a name
113
+ def singular(name)
114
+ case name
115
+ when /ies$/
116
+ return name.sub(/ies$/, 'y')
117
+ when /sses$/
118
+ return name.sub(/es$/, '')
119
+ when /s$/
120
+ return name.chop
121
+ end
122
+ end
123
+
124
+ #
125
+ # Generators for an Entity
126
+ #
127
+
128
+ # Starts a block of values to be displayed together. Takes optionally
129
+ # an argument for the permissions neede, might be the same as another
130
+ # permission. If no permission is given, the name of the block is used
131
+ # as the name of the permission.
132
+ # The final name of the permission is prepended by the name of the class!
133
+ def value_block(*args)
134
+ @block_now = args[0]
135
+ @blocks[@block_now] = []
136
+ end
137
+
138
+ def value_add_(cmds, args)
139
+ value = Value.new(cmds, args, @default_type)
140
+ @values.push value
141
+
142
+ if not get_field_names.index value.name.to_sym
143
+ # Prepare the entry in the blocks
144
+ @blocks[@block_now].push(value)
145
+ end
146
+
147
+ # And add the entry in the DataHandler
148
+ add_value_to_storage(value)
149
+ end
150
+
151
+ def value_add(cmds, *args)
152
+ value_add_(cmds.to_s.split('_'), args)
153
+ end
154
+
155
+ # Adds a _str_-entry to the current block
156
+ def value_str(name)
157
+ value_add(:str, name)
158
+ end
159
+
160
+ # Adds a _int_-entry to the current block
161
+ def value_int(name)
162
+ value_add(:int, name)
163
+ end
164
+
165
+ # Adds a _date_-entry to the current block
166
+ def value_date(name)
167
+ value_add(:date, name)
168
+ end
169
+
170
+ # Adds a _date_-entry to the current block
171
+ def value_time(name)
172
+ value_add(:time, name)
173
+ end
174
+
175
+ # Adds a list which will show as a drop-down
176
+ def value_list_drop_(name, init)
177
+ value_add(:list_drop, name, init)
178
+ end
179
+
180
+ # Adds a reference to an entity, per default takes the name as the entity
181
+ def value_entity(name, entity = name)
182
+ value_add("entity_#{entity}", name)
183
+ end
184
+
185
+ # Makes for a small proxy, in that only the needed classes are
186
+ # instantiated - useful for stuff like long LDAP-lists...
187
+ def get_data_instance(k)
188
+ return nil if !k
189
+ if k.class != Fixnum
190
+ dputs(0) { 'This is very bad' }
191
+ dputs(0) { "value k is #{k.inspect}" }
192
+ dputs(0) { "caller-stack is #{caller}" }
193
+ raise 'WrongIndex'
194
+ end
195
+ return nil if not k or not @data[k.to_i]
196
+ if !@data_instances[k.to_i]
197
+ old_loading = @loading
198
+ @loading = true
199
+ @data_instances[k.to_i]= @data_class.new(@data[k.to_i][@data_field_id], self)
200
+ @data_instances[k.to_i].init_instance
201
+ @loading = old_loading
202
+ end
203
+ return @data_instances[k.to_i]
204
+ end
205
+
206
+ def match_by_id(k)
207
+ get_data_instance(k)
208
+ end
209
+
210
+ # We can
211
+ # - match_by_field - where the data is searched for the "field"
212
+ # - search_by_field - where all data matching "field" is returned
213
+ # - list_field - returns an array of all values of "field"
214
+ # - listp_field - returns an array of arrays of all "data_field_id" and values of "field"
215
+ # - value_type - adds an entry for a value of "type"
216
+ def method_missing(cmd, *args)
217
+ cmd_str = cmd.to_s
218
+ dputs(5) { "Method missing: #{cmd}" }
219
+ case cmd_str
220
+ when /^match_(key|by)_(.*)/
221
+ define_singleton_method(cmd_str.to_sym) { |arg| match_key($~[2], arg) }
222
+ self.send(cmd_str.to_sym, *args)
223
+ when /^create_key_(.*)/
224
+ create_key($~[1])
225
+ when /^(find|search|matches)(_by|)_/
226
+ action = "#{$~[1]}#{$~[2]}"
227
+ field = cmd_str.sub(/^(find|search|matches)(_by|)_/, '')
228
+ dputs(4) { "Using #{action} for field #{field}" }
229
+ if args[0].is_a? Entity
230
+ dputs(4) { "Getting id because it's an Entity" }
231
+ self.send(action, field, args[0].id)
232
+ else
233
+ self.send(action, field, args[0])
234
+ end
235
+ when /^list_/
236
+ field = cmd_str.sub(/^list_/, '')
237
+ dputs(5) { "Using list for field #{field}" }
238
+ ret = @data.values.collect { |v| v[field.to_sym] }.sort { |a, b|
239
+ a.downcase <=> b.downcase
240
+ }
241
+ dputs(4) { "Returning #{ret.inspect}" }
242
+ ret
243
+ when /^listp_/
244
+ field = cmd_str.sub(/^listp_/, '')
245
+ reverse = field =~ /^rev_/
246
+ if reverse
247
+ field.sub!(/^rev_/, '')
248
+ end
249
+ dputs(5) { "Using listpairs for field #{field.inspect}, #{@data.inspect}" }
250
+ ret = @data.keys.collect { |k|
251
+ dputs(4) { "k is #{k.inspect} - data is #{@data[k].inspect}" }
252
+ [k, @data[k][field.to_sym]] }.sort { |a, b|
253
+ a[1] <=> b[1]
254
+ }
255
+ reverse and ret.reverse!
256
+ dputs(3) { "Returning #{ret.inspect}" }
257
+ ret
258
+ when /^value_/
259
+ cmds = cmd_str.split('_')[1..-1]
260
+ value_add_(cmds, args)
261
+ else
262
+ dputs(0) { "Error: Method is missing: #{cmd} in Entities" }
263
+ dputs(0) { caller.inspect }
264
+ super cmd, *args
265
+ end
266
+ end
267
+
268
+ def respond_to?(cmd)
269
+ dputs(5) { cmd.inspect }
270
+ if cmd =~ /^(match_by_|search_by_|list_|listp_|value_)/
271
+ return true
272
+ end
273
+ super cmd
274
+ end
275
+
276
+ def whoami
277
+ dputs(0) { "I'm !*2@#" }
278
+ end
279
+
280
+ # Return an array of all available field-names as symbols
281
+ def get_field_names(b = @blocks)
282
+ ret = b.collect { |c|
283
+ if c.class == Array
284
+ get_field_names(c)
285
+ elsif c.class == Value
286
+ c.name
287
+ else
288
+ nil
289
+ end
290
+ }
291
+ ret = ret.select { |s| s }
292
+ ret.flatten.collect { |c| c.to_sym }
293
+ end
294
+
295
+ # Returns non-list field-names
296
+ def get_non_list_field_names(b = @blocks)
297
+ get_field_names(b).select { |f|
298
+ !%w(list select entity).index(get_value(f).dtype.to_s)
299
+ }
300
+ end
301
+
302
+ # Gets all field names of a block
303
+ def get_block_fields(block)
304
+ return [] unless @blocks.has_key? block.to_sym
305
+ @blocks[block.to_sym].collect { |v|
306
+ v.name
307
+ }
308
+ end
309
+
310
+ # Returns the Value for an entry
311
+ def get_value(n, b = @blocks)
312
+ dputs(5) { "Name is #{n}" }
313
+ n = n.to_sym
314
+ b.each { |c|
315
+ if c.class == Array
316
+ v = get_value(n, c)
317
+ dputs(5) { "Found array #{v.inspect}" }
318
+ v and return v
319
+ elsif c.class == Value
320
+ if c.name.to_sym == n
321
+ dputs(5) { "Found value #{c.inspect}" }
322
+ return c
323
+ end
324
+ end
325
+ }
326
+ dputs(5) { 'Found nothing' }
327
+ return nil
328
+ end
329
+
330
+ def self.service(s)
331
+ dputs(4) { "#{s}, #{@@services_hash["Entities.#{s}"].class.inspect}" }
332
+ if (ret = @@services_hash["Entities.#{s}"]).class == Class
333
+ dputs(0) { "#{s} is missing" }
334
+ caller.each { |c|
335
+ dputs(0) { c }
336
+ }
337
+ exit
338
+ end
339
+ ret
340
+ end
341
+
342
+ # For an easy Entities.Classname access to all entities stored
343
+ # Might also be used by subclasses to directly acces the instance stored
344
+ # in @@services_hash
345
+ def self.method_missing(m, *args)
346
+ dputs(5) { "I think I got a class: #{self.name} - #{m} - #{caller.inspect}" }
347
+ if self.name == 'Entities'
348
+ # This is for the Entities-class
349
+ if ret = Entities.service(m)
350
+ return ret
351
+ else
352
+ dputs(0) { "Method is missing: #{m} in Entries" }
353
+ return super(m, *args)
354
+ end
355
+ else
356
+ # We're in a subclass, so we first have to fetch the instance
357
+ return Entities.service(self.name).send(m, *args)
358
+ end
359
+ end
360
+
361
+ def self.delete_all_data(local_only = false)
362
+ @@all.each_pair { |k, v|
363
+ dputs(2) { "Erasing data of #{k}" }
364
+ v.delete_all(local_only)
365
+ }
366
+ ConfigBases.init
367
+ end
368
+
369
+ def self.save_all()
370
+ #dputs_func
371
+ dputs(3) { 'Saving everything' }
372
+ start = Time.now
373
+ @@all.each { |k, v|
374
+ dputs(3) { "Saving #{v.class.name}" }
375
+ v.save()
376
+ }
377
+ dputs(2) { "Time for saving everything: #{Time.now - start}" }
378
+ end
379
+
380
+ def self.load_all
381
+ dputs(2) { 'Loading everything' }
382
+ @@all.each { |k, v|
383
+ dputs(3) { "Loading #{v.class.name}" }
384
+ v.loading = true
385
+ v.load
386
+ }
387
+ @@all.each { |k, v|
388
+ dputs(3) { "Looking to migrate #{k}" }
389
+ v.migrate
390
+ v.loading = false
391
+ respond_to?(:migrated) and migrated
392
+ }
393
+ end
394
+
395
+ def self.reload
396
+ Entities.save_all
397
+ Entities.delete_all_data(true)
398
+ Entities.load_all
399
+ end
400
+
401
+ def self.is_setup?(e)
402
+ ret = false
403
+ @@all.keys.each { |k|
404
+ ret |= k.to_s == "#{e}"
405
+ }
406
+ dputs(4) { "ret:#{ret} for #{e} with #{@@all.keys.inspect}" }
407
+ ret
408
+ end
409
+
410
+ def self.has_entity?(a)
411
+ dputs(4) { "Searching #{a.inspect} in #{@@all.keys.inspect}" }
412
+ @@all.keys.each { |k|
413
+ return true if k.name.to_s == a.to_s
414
+ }
415
+ return false
416
+ end
417
+
418
+ def self.needs(entities)
419
+ dputs(2) { "#{self.name} needs #{entities}" }
420
+ entities = entities.to_s.to_a unless entities.class == Array
421
+ @@needs["Entities.#{self.name.to_s}"] = entities.collect{|e|
422
+ "Entities.#{e}"
423
+ }
424
+ end
425
+
426
+ end
427
+
428
+ #
429
+ # Defines one simple Entity
430
+ #
431
+ class Entity
432
+ attr_reader :id
433
+ attr_accessor :changed, :show_error_missing
434
+
435
+ def initialize(id, proxy)
436
+ dputs(5) { "Creating entity -#{proxy}- with id #{id}" }
437
+ @id = id.to_i
438
+ @proxy = proxy
439
+ @changed = false
440
+ @cache = {}
441
+ @show_error_missing = true
442
+ end
443
+
444
+ def init_instance
445
+ @pre_init = true
446
+ if true
447
+ @proxy.values.each { |v|
448
+ field = v.name
449
+ if self.public_methods.index("#{field}=".to_sym) &&
450
+ (value = data_get(field))
451
+ dputs(3) { "Setting #{field} to #{value}" }
452
+ send("#{field}=".to_sym, value)
453
+ end
454
+ }
455
+ end
456
+
457
+ setup_instance
458
+ @pre_init = false
459
+ end
460
+
461
+ # Dummy setup - replace with real setup
462
+ def setup_instance
463
+ end
464
+
465
+ alias_method :old_respond_to?, :respond_to?
466
+
467
+ def respond_to?(cmd)
468
+ field = cmd.to_s
469
+ if field == 'to_ary'
470
+ dputs(4) { 'not responding to_ary' }
471
+ return false
472
+ end
473
+ case field
474
+ when /=$/
475
+ return true
476
+ else
477
+ return (@proxy.get_value(cmd) or super)
478
+ end
479
+ end
480
+
481
+ def method_missing(cmd, *args)
482
+ #cmd == :owner ? dputs_func : dputs_unfunc
483
+ dputs(5) { "Entity#method_missing #{cmd} in #{self.class.name}," +
484
+ " with #{args.inspect} and #{args[0].class}" }
485
+ field = cmd.to_s
486
+ field_clean = field.sub(/^_/, '').sub(/=$/, '')
487
+ if not @proxy.get_value(field_clean)
488
+ case field_clean
489
+ when /^listp_(.*)/
490
+ dputs(3) { "Returning listp for #{cmd} - #{$1}" }
491
+ return [self.id, self.send($1)]
492
+ end
493
+ @show_error_missing && dputs(0) { "ValueUnknown for #{cmd.inspect} in "+
494
+ "#{self.class.name} - " +
495
+ "#{caller.inspect} - #{@proxy.blocks.inspect}" }
496
+ if field =~ /^_/
497
+ raise 'ValueUnknown'
498
+ else
499
+ return super
500
+ end
501
+ end
502
+ case field
503
+ when /=$/
504
+ # Setting the value
505
+ dputs(5) { "data_set #{field} for class #{self.class.name}" }
506
+ field_set = "_#{field.chop.sub(/^_/, '')}"
507
+
508
+ if not old_respond_to? "#{field}".to_sym
509
+ dputs(3) { "Creating method #{field} for #{self.class.name}" }
510
+ dputs(4) { "Self is #{self.public_methods.sort.inspect}" }
511
+ self.class.class_eval <<-RUBY
512
+ def #{field}( v )
513
+ data_set( "#{field_set}".to_sym, v )
514
+ end
515
+ RUBY
516
+ dputs(4) { "Sending #{args[0]} to #{field}" }
517
+ send(field, args[0])
518
+ else
519
+ dputs(0) { "#{field} is already defined - don't know what to do..." }
520
+ caller.each { |c|
521
+ dputs(0) { "Caller is #{c.inspect}" }
522
+ }
523
+ end
524
+ else
525
+ # Getting the value
526
+ dputs(5) { "data_get #{field} for class #{self.class.name}" }
527
+
528
+ if not old_respond_to? field
529
+ self.class.class_eval <<-RUBY
530
+ def #{field}
531
+ return @cache[:#{field}] if @cache.has_key? :#{field}
532
+ @cache._#{field} = data_get( "_#{field.sub(/^_/, '')}", false )
533
+ end
534
+ RUBY
535
+ send(field)
536
+ else
537
+ dputs(0) { "#{field} is already defined - don't know what to do" }
538
+ caller.each { |c|
539
+ dputs(0) { "Caller is #{c.inspect}" }
540
+ }
541
+ end
542
+ # data_get( field )
543
+ end
544
+ end
545
+
546
+ def to_hash(unique_ids = false)
547
+ ret = @proxy.data[@id].dup
548
+ dputs(5) { "Will return #{ret.to_a.join('-')}" }
549
+ ret.each { |f, v|
550
+ dputs(5) { "Doing field #{f} with #{v.inspect}" }
551
+ #if data_get(f).is_a? Entity
552
+ if value = @proxy.get_value(f) and value.dtype == 'entity'
553
+ dputs(5) { 'Is an entity' }
554
+ if unique_ids
555
+ ret[f] = (d = data_get("_#{f}")) ? d.get_unique : nil
556
+ else
557
+ ret[f] = [v]
558
+ end
559
+ end
560
+ }
561
+ ret
562
+ end
563
+
564
+ # Deletes the entry from the main part
565
+ def delete
566
+ @proxy.delete_id(@id)
567
+ end
568
+
569
+ def data
570
+ if defined? @storage
571
+ @storage.each { |k, di|
572
+ if not di.data_cache
573
+ @proxy.data_update(@id)
574
+ end
575
+ }
576
+ end
577
+ @proxy.data[@id]
578
+ end
579
+
580
+ def data_get(field, raw = false, dbg = 3)
581
+ #dputs_func
582
+ ret = [field].flatten.collect { |f_orig|
583
+ f = f_orig.to_s
584
+ (direct = f =~ /^_/) and f.sub!(/^_/, '')
585
+ dputs(4) { "Direct is #{direct.inspect} for #{f_orig.inspect}" }
586
+ if (self.public_methods.index(f)) and (not direct)
587
+ dputs(4) { "found direct method for #{f} in #{self.class}" }
588
+ send(f)
589
+ else
590
+ dputs(4) { "Using proxy #{@proxy.class.name} for #{f}" }
591
+ e = @proxy.get_entry(@id, f)
592
+
593
+ dputs(5) { "e is #{e.inspect} from #{@proxy.data.inspect}" }
594
+ if not raw and e
595
+ v = @proxy.get_value(f)
596
+
597
+ if e.class == Fixnum and v and v.dtype == 'entity'
598
+ dputs(5) { "Getting instance for #{v.inspect}" }
599
+ dputs(5) { "Getting instance with #{e.class} - #{e.inspect}" }
600
+ dputs(5) { "Field = #{field}; id = #{@id}" }
601
+ if e > 0 or @proxy.null_allowed
602
+ e = v.eclass.get_data_instance([e].flatten.first)
603
+
604
+ else
605
+ return nil
606
+ end
607
+ elsif v and v.dtype == 'list_entity'
608
+ dputs(4) { "Converting list_entity #{v.inspect} of #{e.inspect}" }
609
+ e = e.collect { |val|
610
+ v.eclass.get_data_instance(val)
611
+ }
612
+ end
613
+ end
614
+ e
615
+ end
616
+ }
617
+ dputs(4) { "Return is #{ret.inspect}" }
618
+ ret.length == 1 ? ret[0] : ret
619
+ end
620
+
621
+ def data_set(field_orig, value)
622
+ field = field_orig.to_s
623
+ (direct = field =~ /^_/) and field.sub!(/^_/, '')
624
+ dputs(4) { "Direct is #{direct.inspect} for field #{field_orig.inspect}" }
625
+ =begin
626
+ v = if value.is_a? Entity
627
+ dputs( 3 ){ "Converting #{value} to #{value.id}" }
628
+ value.id
629
+ elsif value.is_a? Array
630
+ dputs(3){"Storing an array #{value.inspect}"}
631
+ dp value.collect{|val|
632
+ val.is_a?( Entity ) ? val.id : val
633
+ }
634
+ else
635
+ value
636
+ end
637
+ =end
638
+ v = value
639
+ dputs(4) { "Self is #{self.public_methods.sort.inspect}" }
640
+ if (self.public_methods.index("#{field}=".to_sym)) && (not direct)
641
+ dputs(3) { "Setting #{field} through local method" }
642
+ send("#{field}=".to_sym, v)
643
+ else
644
+ dputs(4) { "setting entry #{field} to #{v.inspect}" }
645
+ @proxy.set_entry(@id, field, v)
646
+ dputs(4) { 'Finished setting entry' }
647
+ end
648
+ @changed = true
649
+ @proxy.changed = true
650
+ @cache.delete field.to_sym
651
+
652
+ self
653
+ end
654
+
655
+ # Save all data in the hash for which we have an entry
656
+ def data_set_hash(data, create = false)
657
+ dputs(4) { "#{data.inspect} - #{create} - id is #{id}" }
658
+ fields = @proxy.get_field_names
659
+ data.each { |k, v|
660
+ ks = k.to_sym
661
+ # Only set data for which there is a field
662
+ if fields.index(ks)
663
+ dputs(4) { "Setting field #{ks}" }
664
+ data_set(ks, v)
665
+ end
666
+ }
667
+ self
668
+ end
669
+
670
+ def get_unique
671
+ dputs(5) { "Unique for #{self.inspect}" }
672
+ data_get(@proxy.data_field_id)
673
+ end
674
+
675
+ def true(*args)
676
+ return true
677
+ end
678
+
679
+ def inspect
680
+ #@id
681
+ to_hash.inspect
682
+ end
683
+
684
+ def to_a
685
+ dputs(5) { "to_a on #{self}" }
686
+ [self]
687
+ end
688
+
689
+ def to_frontend
690
+ [id, to_hash.collect { |k, v| v }.join(':')]
691
+ end
692
+
693
+ #def to_ary
694
+ # #[ to_hash.to_a ]
695
+ # dputs(5){"to_arying on #{self}"}
696
+ # [ self ]
697
+ #end
698
+ end
@@ -0,0 +1,14 @@
1
+ cd $( dirname $0 )
2
+ ./mklink
3
+ ./generate.py clean
4
+ ./generate.py build
5
+
6
+ # always load the newest version, if it changed
7
+ MD5=md5sum
8
+ if which md5; then
9
+ MD5=md5
10
+ fi
11
+ SUM=$( $MD5 build/script/frontend.js | sed -e "s/.* //" )
12
+ echo Replacing with md5sum of $SUM
13
+ perl -pi -e "s/md5sum_frontend/$SUM/" build/index.html
14
+
@@ -0,0 +1,4 @@
1
+ cd $( dirname $0 )
2
+ ./mklink
3
+ ./generate.py clean
4
+ ./generate.py source