qooxview 1.9.9
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.project +13 -0
- data/.ruby-version +1 -0
- data/Gemfile +5 -0
- data/Gemfile.lock +89 -0
- data/LICENSE.txt +619 -0
- data/README.md +31 -0
- data/Rakefile +2 -0
- data/VERSIONS +12 -0
- data/lib/qooxview/additions.rb +161 -0
- data/lib/qooxview/config_yaml.rb +42 -0
- data/lib/qooxview/entity.rb +698 -0
- data/lib/qooxview/frontend/1build_generate +14 -0
- data/lib/qooxview/frontend/2src_generate +4 -0
- data/lib/qooxview/frontend/Manifest.json +34 -0
- data/lib/qooxview/frontend/README +19 -0
- data/lib/qooxview/frontend/UploadMgr/.project +11 -0
- data/lib/qooxview/frontend/UploadMgr/Manifest.json +34 -0
- data/lib/qooxview/frontend/UploadMgr/config.json +77 -0
- data/lib/qooxview/frontend/UploadMgr/demo/default/Manifest.json +34 -0
- data/lib/qooxview/frontend/UploadMgr/demo/default/config.json +84 -0
- data/lib/qooxview/frontend/UploadMgr/demo/default/generate.py +72 -0
- data/lib/qooxview/frontend/UploadMgr/demo/default/source/class/uploadmgr/demo/Application.js +224 -0
- data/lib/qooxview/frontend/UploadMgr/demo/default/source/class/uploadmgr/demo/simulation/DemoSimulation.js +44 -0
- data/lib/qooxview/frontend/UploadMgr/demo/default/source/class/uploadmgr/demo/test/DemoTest.js +55 -0
- data/lib/qooxview/frontend/UploadMgr/demo/default/source/class/uploadmgr/demo/theme/Appearance.js +18 -0
- data/lib/qooxview/frontend/UploadMgr/demo/default/source/class/uploadmgr/demo/theme/Color.js +18 -0
- data/lib/qooxview/frontend/UploadMgr/demo/default/source/class/uploadmgr/demo/theme/Decoration.js +18 -0
- data/lib/qooxview/frontend/UploadMgr/demo/default/source/class/uploadmgr/demo/theme/Font.js +18 -0
- data/lib/qooxview/frontend/UploadMgr/demo/default/source/class/uploadmgr/demo/theme/Theme.js +21 -0
- data/lib/qooxview/frontend/UploadMgr/demo/default/source/index.html +9 -0
- data/lib/qooxview/frontend/UploadMgr/demo/default/source/resource/uploadmgr/demo/test.png +0 -0
- data/lib/qooxview/frontend/UploadMgr/demo/default/source/script/uploadmgr.demo.d88b4fb45db4.js +1 -0
- data/lib/qooxview/frontend/UploadMgr/demo/default/source/script/uploadmgr.demo.js +211 -0
- data/lib/qooxview/frontend/UploadMgr/demo/default/source/translation/readme.txt +3 -0
- data/lib/qooxview/frontend/UploadMgr/generate.py +72 -0
- data/lib/qooxview/frontend/UploadMgr/server/LICENSE.TXT +3 -0
- data/lib/qooxview/frontend/UploadMgr/server/README.txt +3 -0
- data/lib/qooxview/frontend/UploadMgr/server/java/com/zenesis/qx/upload/DemoUploadServlet.java +176 -0
- data/lib/qooxview/frontend/UploadMgr/server/perl.cgi +62 -0
- data/lib/qooxview/frontend/UploadMgr/server/php.php +116 -0
- data/lib/qooxview/frontend/UploadMgr/source/class/com/zenesis/qx/upload/AbstractHandler.js +278 -0
- data/lib/qooxview/frontend/UploadMgr/source/class/com/zenesis/qx/upload/File.js +178 -0
- data/lib/qooxview/frontend/UploadMgr/source/class/com/zenesis/qx/upload/FormHandler.js +192 -0
- data/lib/qooxview/frontend/UploadMgr/source/class/com/zenesis/qx/upload/InputElement.js +68 -0
- data/lib/qooxview/frontend/UploadMgr/source/class/com/zenesis/qx/upload/MParameters.js +67 -0
- data/lib/qooxview/frontend/UploadMgr/source/class/com/zenesis/qx/upload/MUploadButton.js +40 -0
- data/lib/qooxview/frontend/UploadMgr/source/class/com/zenesis/qx/upload/UploadButton.js +35 -0
- data/lib/qooxview/frontend/UploadMgr/source/class/com/zenesis/qx/upload/UploadMgr.js +301 -0
- data/lib/qooxview/frontend/UploadMgr/source/class/com/zenesis/qx/upload/UploadToolbarButton.js +35 -0
- data/lib/qooxview/frontend/UploadMgr/source/class/com/zenesis/qx/upload/XhrHandler.js +176 -0
- data/lib/qooxview/frontend/UploadMgr/source/class/com/zenesis/qx/upload/simulation/DemoSimulation.js +44 -0
- data/lib/qooxview/frontend/UploadMgr/source/class/com/zenesis/qx/upload/test/DemoTest.js +55 -0
- data/lib/qooxview/frontend/UploadMgr/source/class/com/zenesis/qx/upload/theme/Appearance.js +18 -0
- data/lib/qooxview/frontend/UploadMgr/source/class/com/zenesis/qx/upload/theme/Color.js +18 -0
- data/lib/qooxview/frontend/UploadMgr/source/class/com/zenesis/qx/upload/theme/Decoration.js +18 -0
- data/lib/qooxview/frontend/UploadMgr/source/class/com/zenesis/qx/upload/theme/Font.js +18 -0
- data/lib/qooxview/frontend/UploadMgr/source/class/com/zenesis/qx/upload/theme/Theme.js +21 -0
- data/lib/qooxview/frontend/UploadMgr/source/index.html +9 -0
- data/lib/qooxview/frontend/UploadMgr/source/resource/com/zenesis/qx/upload/banner-bg.png +0 -0
- data/lib/qooxview/frontend/UploadMgr/source/resource/com/zenesis/qx/upload/banner.png +0 -0
- data/lib/qooxview/frontend/UploadMgr/source/resource/com/zenesis/qx/upload/logo.gif +0 -0
- data/lib/qooxview/frontend/UploadMgr/source/resource/com/zenesis/qx/upload/test.png +0 -0
- data/lib/qooxview/frontend/UploadMgr/source/translation/readme.txt +3 -0
- data/lib/qooxview/frontend/build/index.html +11 -0
- data/lib/qooxview/frontend/build/resource/frontend/test.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/app-header.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/arrows/down-invert.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/arrows/down-small-invert.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/arrows/down-small.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/arrows/down.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/arrows/forward.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/arrows/left-invert.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/arrows/left.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/arrows/rewind.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/arrows/right-invert.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/arrows/right.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/arrows/up-invert.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/arrows/up-small.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/arrows/up.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/arrows-combined.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/button-lr-combined.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/button-tb-combined.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/checkradio-combined.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/colorselector/brightness-field.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/colorselector/brightness-handle.gif +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/colorselector/huesaturation-field.jpg +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/colorselector/huesaturation-handle.gif +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/colorselector-combined.gif +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/cursors/alias.gif +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/cursors/copy.gif +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/cursors/move.gif +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/cursors/nodrop.gif +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/cursors-combined.gif +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-b.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-bl.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-br.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-c.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-checked-b.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-checked-bl.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-checked-br.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-checked-c.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-checked-focused-b.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-checked-focused-bl.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-checked-focused-br.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-checked-focused-c.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-checked-focused-l.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-checked-focused-r.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-checked-focused-t.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-checked-focused-tl.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-checked-focused-tr.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-checked-focused.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-checked-l.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-checked-r.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-checked-t.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-checked-tl.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-checked-tr.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-checked.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-disabled-b.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-disabled-bl.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-disabled-br.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-disabled-c.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-disabled-l.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-disabled-r.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-disabled-t.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-disabled-tl.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-disabled-tr.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-disabled.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-focused-b.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-focused-bl.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-focused-br.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-focused-c.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-focused-l.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-focused-r.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-focused-t.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-focused-tl.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-focused-tr.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-focused.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-hovered-b.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-hovered-bl.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-hovered-br.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-hovered-c.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-hovered-l.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-hovered-r.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-hovered-t.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-hovered-tl.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-hovered-tr.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-hovered.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-l.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-preselected-b.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-preselected-bl.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-preselected-br.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-preselected-c.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-preselected-focused-b.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-preselected-focused-bl.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-preselected-focused-br.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-preselected-focused-c.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-preselected-focused-l.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-preselected-focused-r.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-preselected-focused-t.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-preselected-focused-tl.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-preselected-focused-tr.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-preselected-focused.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-preselected-l.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-preselected-r.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-preselected-t.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-preselected-tl.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-preselected-tr.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-preselected.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-pressed-b.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-pressed-bl.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-pressed-br.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-pressed-c.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-pressed-l.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-pressed-r.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-pressed-t.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-pressed-tl.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-pressed-tr.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-pressed.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-r.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-t.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-tl.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button-tr.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/button.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/checkbox-checked-disabled.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/checkbox-checked-focused-invalid.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/checkbox-checked-focused.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/checkbox-checked-hovered-invalid.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/checkbox-checked-hovered.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/checkbox-checked-invalid.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/checkbox-checked-pressed-invalid.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/checkbox-checked-pressed.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/checkbox-checked.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/checkbox-disabled.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/checkbox-focused-invalid.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/checkbox-focused.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/checkbox-hovered-invalid.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/checkbox-hovered.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/checkbox-invalid.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/checkbox-pressed-invalid.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/checkbox-pressed.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/checkbox-undetermined-disabled.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/checkbox-undetermined-focused-invalid.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/checkbox-undetermined-focused.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/checkbox-undetermined-hovered-invalid.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/checkbox-undetermined-hovered.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/checkbox-undetermined-invalid.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/checkbox-undetermined.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/checkbox.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/checked-disabled.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/checked.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/input-focused.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/input.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/radiobutton-checked-disabled.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/radiobutton-checked-focused-invalid.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/radiobutton-checked-focused.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/radiobutton-checked-hovered-invalid.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/radiobutton-checked-hovered.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/radiobutton-checked-invalid.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/radiobutton-checked-pressed-invalid.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/radiobutton-checked-pressed.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/radiobutton-checked.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/radiobutton-disabled.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/radiobutton-focused-invalid.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/radiobutton-focused.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/radiobutton-hovered-invalid.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/radiobutton-hovered.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/radiobutton-invalid.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/radiobutton-pressed-invalid.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/radiobutton-pressed.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/radiobutton.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/tooltip-error-arrow-right.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/tooltip-error-arrow.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/tooltip-error-b.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/tooltip-error-bl.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/tooltip-error-br.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/tooltip-error-c.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/tooltip-error-l.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/tooltip-error-r.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/tooltip-error-t.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/tooltip-error-tl.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/tooltip-error-tr.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/tooltip-error.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/undetermined-disabled.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/form/undetermined.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/group-item.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/groupbox/groupbox-b.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/groupbox/groupbox-bl.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/groupbox/groupbox-br.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/groupbox/groupbox-c.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/groupbox/groupbox-l.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/groupbox/groupbox-r.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/groupbox/groupbox-t.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/groupbox/groupbox-tl.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/groupbox/groupbox-tr.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/groupbox/groupbox.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/groupbox-lr-combined.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/groupbox-tb-combined.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/menu/background.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/menu/bar-background.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/menu/checkbox-invert.gif +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/menu/checkbox.gif +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/menu/radiobutton-invert.gif +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/menu/radiobutton.gif +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/menu-background-combined.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/menu-checkradio-combined.gif +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/pane/pane-b.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/pane/pane-bl.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/pane/pane-br.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/pane/pane-c.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/pane/pane-l.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/pane/pane-r.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/pane/pane-t.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/pane/pane-tl.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/pane/pane-tr.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/pane/pane.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/pane-lr-combined.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/pane-tb-combined.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/scrollbar/scrollbar-bg-horizontal.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/scrollbar/scrollbar-bg-pressed-horizontal.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/scrollbar/scrollbar-bg-pressed-vertical.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/scrollbar/scrollbar-bg-vertical.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/scrollbar/scrollbar-button-bg-horizontal.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/scrollbar/scrollbar-button-bg-vertical.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/scrollbar/scrollbar-down.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/scrollbar/scrollbar-left.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/scrollbar/scrollbar-right.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/scrollbar/scrollbar-up.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/scrollbar/slider-knob-background.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/scrollbar-combined.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/selection.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/shadow/shadow-b.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/shadow/shadow-bl.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/shadow/shadow-br.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/shadow/shadow-c.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/shadow/shadow-l.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/shadow/shadow-r.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/shadow/shadow-small-b.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/shadow/shadow-small-bl.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/shadow/shadow-small-br.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/shadow/shadow-small-c.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/shadow/shadow-small-l.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/shadow/shadow-small-r.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/shadow/shadow-small-t.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/shadow/shadow-small-tl.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/shadow/shadow-small-tr.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/shadow/shadow-small.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/shadow/shadow-t.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/shadow/shadow-tl.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/shadow/shadow-tr.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/shadow/shadow.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/shadow-lr-combined.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/shadow-small-lr-combined.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/shadow-small-tb-combined.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/shadow-tb-combined.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/splitpane/knob-horizontal.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/splitpane/knob-vertical.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/splitpane-knobs-combined.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/table/ascending.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/table/boolean-false.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/table/boolean-true.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/table/descending.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/table/header-cell.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/table/select-column-order.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/table-combined.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-bottom-active-b.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-bottom-active-bl.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-bottom-active-br.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-bottom-active-c.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-bottom-active-l.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-bottom-active-r.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-bottom-active-t.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-bottom-active-tl.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-bottom-active-tr.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-bottom-active.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-bottom-inactive-b.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-bottom-inactive-bl.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-bottom-inactive-br.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-bottom-inactive-c.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-bottom-inactive-l.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-bottom-inactive-r.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-bottom-inactive-t.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-bottom-inactive-tl.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-bottom-inactive-tr.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-bottom-inactive.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-left-active-b.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-left-active-bl.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-left-active-br.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-left-active-c.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-left-active-l.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-left-active-r.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-left-active-t.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-left-active-tl.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-left-active-tr.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-left-active.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-left-inactive-b.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-left-inactive-bl.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-left-inactive-br.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-left-inactive-c.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-left-inactive-l.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-left-inactive-r.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-left-inactive-t.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-left-inactive-tl.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-left-inactive-tr.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-left-inactive.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-right-active-b.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-right-active-bl.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-right-active-br.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-right-active-c.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-right-active-l.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-right-active-r.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-right-active-t.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-right-active-tl.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-right-active-tr.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-right-active.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-right-inactive-b.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-right-inactive-bl.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-right-inactive-br.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-right-inactive-c.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-right-inactive-l.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-right-inactive-r.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-right-inactive-t.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-right-inactive-tl.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-right-inactive-tr.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-right-inactive.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-top-active-b.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-top-active-bl.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-top-active-br.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-top-active-c.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-top-active-l.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-top-active-r.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-top-active-t.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-top-active-tl.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-top-active-tr.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-top-active.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-top-inactive-b.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-top-inactive-bl.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-top-inactive-br.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-top-inactive-c.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-top-inactive-l.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-top-inactive-r.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-top-inactive-t.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-top-inactive-tl.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-top-inactive-tr.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tab-button-top-inactive.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tabview-pane-b.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tabview-pane-bl.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tabview-pane-br.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tabview-pane-c.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tabview-pane-l.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tabview-pane-r.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tabview-pane-t.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tabview-pane-tl.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tabview-pane-tr.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview/tabview-pane.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview-button-bottom-active-lr-combined.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview-button-bottom-active-tb-combined.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview-button-bottom-inactive-b-combined.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview-button-bottom-inactive-lr-combined.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview-button-bottom-inactive-t-combined.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview-button-left-active-lr-combined.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview-button-left-active-tb-combined.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview-button-left-inactive-b-combined.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview-button-left-inactive-lr-combined.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview-button-left-inactive-t-combined.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview-button-right-active-lr-combined.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview-button-right-active-tb-combined.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview-button-right-inactive-b-combined.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview-button-right-inactive-lr-combined.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview-button-right-inactive-t-combined.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview-button-top-active-lr-combined.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview-button-top-active-tb-combined.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview-button-top-inactive-b-combined.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview-button-top-inactive-lr-combined.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview-button-top-inactive-t-combined.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview-pane-lr-combined.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tabview-pane-tb-combined.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/toolbar/toolbar-gradient-blue.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/toolbar/toolbar-gradient.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/toolbar/toolbar-handle-knob.gif +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/toolbar/toolbar-part.gif +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/toolbar-combined.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tooltip-error-lr-combined.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tooltip-error-tb-combined.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tree/closed-selected.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tree/closed.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tree/open-selected.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tree/open.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/tree-combined.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/captionbar-active-b.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/captionbar-active-bl.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/captionbar-active-br.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/captionbar-active-c.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/captionbar-active-l.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/captionbar-active-r.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/captionbar-active-t.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/captionbar-active-tl.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/captionbar-active-tr.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/captionbar-active.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/captionbar-inactive-b.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/captionbar-inactive-bl.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/captionbar-inactive-br.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/captionbar-inactive-c.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/captionbar-inactive-l.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/captionbar-inactive-r.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/captionbar-inactive-t.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/captionbar-inactive-tl.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/captionbar-inactive-tr.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/captionbar-inactive.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/close-active-hovered.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/close-active.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/close-inactive.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/maximize-active-hovered.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/maximize-active.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/maximize-inactive.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/minimize-active-hovered.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/minimize-active.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/minimize-inactive.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/restore-active-hovered.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/restore-active.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/restore-inactive.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/statusbar-b.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/statusbar-bl.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/statusbar-br.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/statusbar-c.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/statusbar-l.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/statusbar-r.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/statusbar-t.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/statusbar-tl.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/statusbar-tr.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window/statusbar.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window-captionbar-buttons-combined.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window-captionbar-lr-active-combined.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window-captionbar-lr-inactive-combined.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window-captionbar-tb-active-combined.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window-captionbar-tb-inactive-combined.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window-statusbar-lr-combined.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/decoration/Modern/window-statusbar-tb-combined.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/icon/Tango/16/actions/dialog-cancel.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/icon/Tango/16/actions/dialog-ok.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/icon/Tango/16/actions/view-refresh.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/icon/Tango/16/actions/window-close.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/icon/Tango/16/apps/office-calendar.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/icon/Tango/16/apps/utilities-color-chooser.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/icon/Tango/16/mimetypes/office-document.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/icon/Tango/16/places/folder-open.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/icon/Tango/16/places/folder.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/icon/Tango/22/mimetypes/office-document.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/icon/Tango/22/places/folder-open.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/icon/Tango/22/places/folder.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/icon/Tango/32/mimetypes/office-document.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/icon/Tango/32/places/folder-open.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/icon/Tango/32/places/folder.png +0 -0
- data/lib/qooxview/frontend/build/resource/qx/static/blank.gif +0 -0
- data/lib/qooxview/frontend/build/resource/qx/static/blank.png +0 -0
- data/lib/qooxview/frontend/build/script/frontend.js +213 -0
- data/lib/qooxview/frontend/config.json +58 -0
- data/lib/qooxview/frontend/generate.py +149 -0
- data/lib/qooxview/frontend/mklink +2 -0
- data/lib/qooxview/frontend/readme.txt +11 -0
- data/lib/qooxview/frontend/source/class/frontend/Application.js +84 -0
- data/lib/qooxview/frontend/source/class/frontend/LAYOUT +120 -0
- data/lib/qooxview/frontend/source/class/frontend/Lib/Fields.js +1486 -0
- data/lib/qooxview/frontend/source/class/frontend/Lib/RPC.js +104 -0
- data/lib/qooxview/frontend/source/class/frontend/Lib/TimerF.js +63 -0
- data/lib/qooxview/frontend/source/class/frontend/Views/Form.js +150 -0
- data/lib/qooxview/frontend/source/class/frontend/Views/Ltab.js +633 -0
- data/lib/qooxview/frontend/source/class/frontend/__init__.js +6 -0
- data/lib/qooxview/frontend/source/class/frontend/globals.js +51 -0
- data/lib/qooxview/frontend/source/class/frontend/simulation/DemoSimulation.js +42 -0
- data/lib/qooxview/frontend/source/class/frontend/test/DemoTest.js +55 -0
- data/lib/qooxview/frontend/source/class/frontend/theme/Appearance.js +18 -0
- data/lib/qooxview/frontend/source/class/frontend/theme/Color.js +18 -0
- data/lib/qooxview/frontend/source/class/frontend/theme/Decoration.js +18 -0
- data/lib/qooxview/frontend/source/class/frontend/theme/Font.js +18 -0
- data/lib/qooxview/frontend/source/class/frontend/theme/Theme.js +21 -0
- data/lib/qooxview/frontend/source/index.html +11 -0
- data/lib/qooxview/frontend/source/resource/frontend/test.png +0 -0
- data/lib/qooxview/frontend/source/translation/readme.txt +3 -0
- data/lib/qooxview/helpers/config_base.rb +264 -0
- data/lib/qooxview/helpers/icc.rb +222 -0
- data/lib/qooxview/helpers/make_steps.rb +77 -0
- data/lib/qooxview/helpers/migration_version.rb +18 -0
- data/lib/qooxview/helpers/open_print.rb +286 -0
- data/lib/qooxview/helpers/permission.rb +146 -0
- data/lib/qooxview/helpers/qoox_parser.rb +54 -0
- data/lib/qooxview/helpers/session.rb +68 -0
- data/lib/qooxview/helpers/static.rb +23 -0
- data/lib/qooxview/helpers/upload_files.rb +27 -0
- data/lib/qooxview/helpers/vtlist_pane.rb +158 -0
- data/lib/qooxview/helpers/welcome.rb +55 -0
- data/lib/qooxview/qooxview.rb +175 -0
- data/lib/qooxview/rpcqooxdoo.rb +395 -0
- data/lib/qooxview/storage_handler.rb +455 -0
- data/lib/qooxview/storage_type.rb +129 -0
- data/lib/qooxview/storages/csv.rb +170 -0
- data/lib/qooxview/storages/ldap.rb +238 -0
- data/lib/qooxview/storages/sqlite.rb +198 -0
- data/lib/qooxview/value.rb +202 -0
- data/lib/qooxview/version.rb +3 -0
- data/lib/qooxview/view.rb +904 -0
- data/lib/qooxview.rb +83 -0
- data/qooxview.gemspec +50 -0
- data/test/benchmark_creation.rb +37 -0
- data/test/config.yaml +36 -0
- data/test/entities/config.rb +33 -0
- data/test/entities/course.rb +28 -0
- data/test/entities/databases.rb +17 -0
- data/test/entities/doubleCase.rb +12 -0
- data/test/entities/dummies.rb +24 -0
- data/test/entities/inventory.rb +6 -0
- data/test/entities/needs.rb +20 -0
- data/test/entities/person.rb +73 -0
- data/test/file_binary.bin +0 -0
- data/test/files/print_formulas.ods +0 -0
- data/test/files/print_formulas_2.ods +0 -0
- data/test/files/student_card.odg +0 -0
- data/test/gettext.po +24 -0
- data/test/gettext.pot +0 -0
- data/test/messages.mo +0 -0
- data/test/po/fr/LC_MESSAGES/gettext.mo +0 -0
- data/test/qooxdoo-layout-frontend.js +49 -0
- data/test/qv_configbase.rb +98 -0
- data/test/qv_entity.rb +271 -0
- data/test/qv_gettext.rb +28 -0
- data/test/qv_helpers.rb +173 -0
- data/test/qv_icc.rb +60 -0
- data/test/qv_migration.rb +130 -0
- data/test/qv_permission.rb +34 -0
- data/test/qv_print.rb +73 -0
- data/test/qv_session.rb +29 -0
- data/test/qv_sqlite.rb +73 -0
- data/test/qv_store_csv.rb +86 -0
- data/test/qv_stype.rb +41 -0
- data/test/qv_view.rb +204 -0
- data/test/st_dummy.rb +30 -0
- data/test/test.rb +49 -0
- data/test/views/aview.rb +24 -0
- data/test/views/bview.rb +10 -0
- data/test/views/configviews.rb +19 -0
- data/test/views/courseshow.rb +11 -0
- data/test/views/cview.rb +22 -0
- data/test/views/login.rb +15 -0
- data/test/views/print.rb +10 -0
- 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
|
+
|