summaryrefslogtreecommitdiff
path: root/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample
diff options
context:
space:
mode:
Diffstat (limited to 'webapps/qooxdoo-0.6.5-sdk/frontend/application/sample')
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/Makefile122
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/css/layout.css173
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/css/layout_ie.css11
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Atom_1.html73
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Atom_2.html172
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Atom_3.html39
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ButtonView_1.html89
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ButtonView_2.html98
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Button_1.html73
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/CheckBox_1.html104
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ColorPopup_1.html83
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ColorSelector_1.html29
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ColorSelector_2.html30
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ComboBoxEx_1.html230
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ComboBox_1.html101
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Command_1.html141
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Command_2.html186
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/DateChooser_1.html31
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Drag_1.html57
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Fields_1.html107
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Flash_1.html53
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Fsm_1.html26
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Fsm_1/fsm.js297
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Fsm_1/gui.js95
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Fsm_1/main.js11
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/GalleryList_1.html129
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Gallery_1.html116
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/GroupBox_1.html107
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/GroupBox_2.html153
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/GroupBox_3.html160
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Iframe_1.html71
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Inline_1.html260
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ListView_1.html67
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ListView_2.html53
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ListView_3.html51
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ListView_4.html58
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/List_1.html127
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Menu_1.html193
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/NativeWindow_1.html198
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/RadioButton_1.html114
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/RepeatButton_1.html73
-rwxr-xr-xwebapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Resizer_1.html63
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/RpcTreeFullControl_1.html194
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Spinner_1.html107
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/SplitPane_1.html72
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/SplitPane_2.html75
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/TabView_1.html156
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/TabView_2.html127
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Table_1.html107
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Table_2.html50
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ToolBar_1.html252
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ToolBar_2.html269
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ToolBar_3.html184
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ToolBar_4.html196
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ToolTip_1.html111
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/TreeFullControl_1.html235
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/TreeFullControl_2.html270
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/TreeFullControl_3.html298
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/TreeFullControl_4.html384
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Tree_1.html191
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Window_1.html308
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/image/flash/color/file1.swfbin0 -> 354 bytes
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/image/flash/color/file10.swfbin0 -> 354 bytes
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/image/flash/color/file2.swfbin0 -> 354 bytes
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/image/flash/color/file3.swfbin0 -> 353 bytes
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/image/flash/color/file4.swfbin0 -> 354 bytes
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/image/flash/color/file5.swfbin0 -> 354 bytes
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/image/flash/color/file6.swfbin0 -> 353 bytes
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/image/flash/color/file7.swfbin0 -> 353 bytes
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/image/flash/color/file8.swfbin0 -> 354 bytes
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/image/flash/color/file9.swfbin0 -> 354 bytes
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/image/flash/fo_tester.flabin0 -> 58368 bytes
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/image/flash/fo_tester.swfbin0 -> 10210 bytes
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/index.html8
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/ArrayCreate_1.html57
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/ArrayCreate_2.html47
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/GlobalObject_1.html43
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/GlobalObject_2.html51
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/GlobalObject_3.html53
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/GlobalObject_4.html52
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/LocalObject_1.html43
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/LocalObject_2.html51
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/LocalObject_3.html52
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/LocalObject_4.html53
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/LocalObject_5.html50
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/NumberCreate_1.html110
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/ObjectCreate_1.html57
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/ObjectCreate_2.html77
-rwxr-xr-xwebapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/ObjectLevel_1.html92
-rwxr-xr-xwebapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/ObjectLevel_2.html88
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/ObjectLevel_3.html97
-rwxr-xr-xwebapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/ObjectSize_1.html62
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/Qooxdoo_1.html83
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/StringConcat_1.html95
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/StringConcat_2.html98
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/StringConcat_3.html109
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/TypeCheck_1.html84
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/index.html8
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Atom_1.html286
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Atom_2.html187
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Atom_3.html322
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Atom_4.html53
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Atom_5.html43
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Atom_6.html43
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Atom_7.html43
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Atom_8.html43
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Atom_9.html44
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Border_1.html177
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/BoxLayout_1.html283
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/BoxLayout_2.html324
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Builder_1.html73
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Builder_2.html25
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Builder_2.xml51
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Builder_3.html26
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Builder_3.xml33
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Builder_4.html42
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Button_1.html44
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/CSS_1.html110
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/CanvasLayout_1.html616
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/CanvasLayout_3.html52
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/CanvasLayout_4.html50
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/CanvasLayout_5.html45
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Clipping_1.html76
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Clone_1.html91
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Clone_2.html108
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ColorTheme_1.html235
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ColorTheme_2.html77
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ColorTheme_3.html176
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ComboBox_1.html102
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ComboBox_2.html116
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ComboBox_3.html123
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ComboBox_4.html41
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/CookieStorage_1.html45
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/CookieStorage_2.html67
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Cookie_1.html45
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/CrossBrowser_1.html166
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/CrossBrowser_2.html128
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/DateChooserButton_1.html64
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/DateChooserButton_2.html65
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/DockLayout_1.html53
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/DockLayout_2.html224
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/DockLayout_3.html140
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/DockLayout_4.html140
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/DockLayout_5.html164
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/DockLayout_6.html71
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/DragAndDropManager_1.html131
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/DragAndDropManager_2.html135
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/EnabledDisabled_1.html230
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/FieldSet_1.html141
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Fields_1.html179
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/FlowLayout_1.html319
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/FlowLayout_2.html193
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/FlowLayout_3.html277
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/FocusManager_1.html108
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Font_1.html63
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/FormUtils_1.html86
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Gallery_2.html135
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Gallery_3.html178
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Generate_1.html267
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/GridLayout_1.html79
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/GridLayout_10.html94
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/GridLayout_11.html124
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/GridLayout_2.html88
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/GridLayout_3.html82
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/GridLayout_4.html81
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/GridLayout_5.html85
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/GridLayout_6.html109
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/GridLayout_7.html112
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/GridLayout_8.html115
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/GridLayout_9.html120
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/History_1.html84
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/HorizontalBoxLayout_1.html1261
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/HorizontalBoxLayout_2.html1233
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/HorizontalBoxLayout_3.html594
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/HtmlTable_1.html142
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/HtmlTable_2.html140
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/IconHtml_1.html29
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Image_1.html114
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Image_2.html150
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Keyhandler_1.html117
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Label_1.html172
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Label_2.html40
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Label_3.html177
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Label_4.html101
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Leak_1.html71
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Link_1.html29
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ListView_1.html57
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ListView_10.html86
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ListView_2.html52
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ListView_3.html52
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ListView_4.html52
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ListView_5.html53
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ListView_6.html53
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ListView_7.html114
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ListView_8.html121
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ListView_9.html119
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/List_1.html128
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/List_2.html111
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/List_3.html55
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Menu_1.html129
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Menu_2.html205
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Node_1.html39
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Popups_1.html106
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Popups_2.html102
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/RPC_1.html116
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/RPC_2.html134
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/RPC_3.html240
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/RPC_4.html470
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/RPC_5.html95
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/SplitPane_1.html91
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Table_1.html50
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Table_2.html52
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Table_3.html52
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Table_4.html53
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Table_5.html55
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ToolBar_1.html227
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ToolBar_2.html113
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ToolBar_3.html39
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ToolBar_4.html193
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Transport_1.html196
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Transport_2.html189
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Transport_3.html114
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Transport_4.html198
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Transport_5.html198
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Transport_6.html222
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/TreeVirtual_1.html69
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/TreeVirtual_2.html98
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/TreeVirtual_3.html84
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/TreeVirtual_4.html186
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/TreeVirtual_5.html176
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/TreeVirtual_6.html135
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Tree_1.html171
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Tree_2.html294
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Tree_3.html201
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Tree_4.html40
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Tree_5.html148
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Tree_6.html231
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Tree_7.html233
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Umlauts_1.html26
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/VerticalBoxLayout_1.html1257
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/VerticalBoxLayout_2.html1227
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/VerticalBoxLayout_3.html552
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Window_1.html179
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Window_2.html54
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Window_3.html99
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Window_4.html104
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Window_5.html221
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Window_6.html109
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/bigFont.css3
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/boldFont.css3
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/filesize/400kb.xml10224
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/filesize/40kb.xml1003
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/anita.html11
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/anita.js10
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/anita.txt8
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/anita.xml11
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/harald.html11
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/harald.js10
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/harald.txt8
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/harald.xml11
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/lisbeth.html11
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/lisbeth.js10
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/lisbeth.txt8
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/lisbeth.xml11
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/paul.html11
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/paul.js10
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/paul.txt8
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/paul.xml11
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/image/flash/color/file1.swfbin0 -> 354 bytes
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/image/flash/color/file10.swfbin0 -> 354 bytes
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/image/flash/color/file2.swfbin0 -> 354 bytes
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/image/flash/color/file3.swfbin0 -> 353 bytes
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/image/flash/color/file4.swfbin0 -> 354 bytes
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/image/flash/color/file5.swfbin0 -> 354 bytes
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/image/flash/color/file6.swfbin0 -> 353 bytes
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/image/flash/color/file7.swfbin0 -> 353 bytes
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/image/flash/color/file8.swfbin0 -> 354 bytes
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/image/flash/color/file9.swfbin0 -> 354 bytes
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/image/flash/fo_tester.flabin0 -> 58368 bytes
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/image/flash/fo_tester.swfbin0 -> 10210 bytes
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/image/grid_dialog_box.pngbin0 -> 25808 bytes
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/index.html8
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/index.html122
-rw-r--r--webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/translation/C.po0
-rwxr-xr-xwebapps/qooxdoo-0.6.5-sdk/frontend/application/sample/tool/layout.py149
285 files changed, 45444 insertions, 0 deletions
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/Makefile b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/Makefile
new file mode 100644
index 0000000000..ec67480fc1
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/Makefile
@@ -0,0 +1,122 @@
+################################################################################
+#
+# qooxdoo - the new era of web development
+#
+# http://qooxdoo.org
+#
+# Copyright:
+# 2006-2007 1&1 Internet AG, Germany, http://www.1and1.org
+#
+# License:
+# LGPL: http://www.gnu.org/licenses/lgpl.html
+# EPL: http://www.eclipse.org/org/documents/epl-v10.php
+# See the LICENSE file in the project's top-level directory for details.
+#
+# Authors:
+# * Sebastian Werner (wpbasti)
+# * Andreas Ecker (ecker)
+# * Fabian Jakobs (fjakobs)
+#
+################################################################################
+
+################################################################################
+# BASIC SETTINGS
+################################################################################
+
+#
+# Location of your qooxdoo distribution
+# Could be relative from this location or absolute
+#
+QOOXDOO_PATH = ../../..
+
+#
+# The same as above, but from the webserver point of view
+# Starting point is the application HTML file of the source folder.
+# In most cases just add a "/.." compared to above
+#
+QOOXDOO_URI = ../../../../../..
+
+#
+# Namespace of your application e.g. custom
+#
+APPLICATION_NAMESPACE = sample
+
+#
+# Titles used in your API viewer and during the build process
+#
+APPLICATION_MAKE_TITLE = SAMPLE
+APPLICATION_API_TITLE = Sample
+
+#
+# Additional files (space separated list)
+#
+APPLICATION_FILES = index.html html css
+
+
+
+################################################################################
+# ADVANCED SETTINGS
+################################################################################
+
+#
+# Disable line breaks
+#
+APPLICATION_LINEBREAKS_BUILD = false
+APPLICATION_LINEBREAKS_SOURCE = false
+
+#
+# qooxdoo.org sync
+#
+APPLICATION_PUBLISH_PATH = root@qooxdoo.org:/var/www/qooxdoo/demo/$(FRAMEWORK_VERSION)/$(APPLICATION_NAMESPACE)
+
+#
+# Build/Integrate all features
+#
+APPLICATION_COMPLETE_BUILD = true
+
+#
+# Relation from HTML file to the top level directory (source or build).
+#
+APPLICATION_PAGE_TO_TOPLEVEL = ../..
+
+
+
+
+
+
+################################################################################
+# INCLUDE CORE
+################################################################################
+
+ifneq ($(QOOXDOO_PATH),PLEASE_DEFINE_QOOXDOO_PATH)
+ include $(QOOXDOO_PATH)/frontend/framework/tool/make/targets.mk
+ include $(QOOXDOO_PATH)/frontend/framework/tool/make/application.mk
+endif
+
+error:
+ @echo " * Please configure QOOXDOO_PATH"
+
+
+
+
+
+################################################################################
+# EXTENSIONS
+################################################################################
+
+layout-source:
+ @echo
+ @echo " GENERATION OF SAMPLE LAYOUT"
+ @$(CMD_LINE)
+ @echo " * Generating source/script/layout.js..."
+ @python tool/layout.py source/script/layout.js source/html
+
+layout-build:
+ @echo
+ @echo " GENERATION OF SAMPLE LAYOUT"
+ @$(CMD_LINE)
+ @echo " * Generating build/script/layout.js..."
+ @python tool/layout.py build/script/layout.js build/html
+
+build: layout-build
+source: layout-source
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/css/layout.css b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/css/layout.css
new file mode 100644
index 0000000000..e2c1d55ade
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/css/layout.css
@@ -0,0 +1,173 @@
+body{
+ font-size: 11px;
+ font-family: Arial, "Bitstream Vera Sans", Verdana, sans-serif;
+ margin: 0;
+ padding: 0;
+}
+
+p{
+ margin: 6px 0;
+}
+
+#demoHead,
+#demoFoot{
+ position: absolute;
+ left: 0px;
+ right: 0px;
+ width: 100%;
+ background: #134275;
+ padding: 3px 8px;
+ height: 20px;
+ color: white;
+ font-weight: bold;
+ overflow: hidden;
+ z-index: 1000000000;
+}
+
+#demoHead{
+ top: 0px;
+}
+
+#demoHead span{
+ font-weight: normal;
+}
+
+#demoFoot{
+ bottom: 0px;
+}
+
+#demoFoot a{
+ color: white;
+}
+
+#demoFrame{
+ position: absolute;
+ top: 20px;
+ bottom: 20px;
+ right: 0;
+ width: 280px;
+ background: #fff;
+ border-left: 10px solid #134275;
+ z-index: 1000000000;
+}
+
+#demoFiles{
+ font-size: 11px;
+ font-family: Tahoma, Verdana, sans-serif;
+
+ position: absolute;
+ top: 24px;
+ right: 50px;
+ width: 215px;
+ z-index: 1000000002;
+}
+
+#demoFiles optgroup{
+ background: #ececed;
+ font-size: 14px;
+ text-transform: capitalize;
+}
+
+#demoFiles optgroup option{
+ font-size: 11px;
+ background: #fff;
+}
+
+#demoJump{
+ position: absolute;
+ top: 24px;
+ right: 4px;
+ width: 45px;
+ text-align: right;
+ z-index: 1000000002;
+}
+
+#demoDescription{
+ position: absolute;
+ top: 44px;
+ height : 120px;
+ width: 266px;
+ right: 4px;
+ z-index: 1000000002;
+ overflow: auto;
+ border-bottom: 10px solid #134275;
+ padding: 0px 6px 0px 4px;
+}
+
+#demoDescription p{
+ margin: 4px 0;
+}
+
+#demoDescription h1{
+ font-size: 12px;
+ margin: 8px 0 4px;
+}
+
+#demoDebug{
+ position: absolute;
+ top: 160px;
+ bottom: 24px;
+ right: 4px;
+ width: 266px;
+ font-size: 10px;
+ font-family: "Bitstream Vera Sans Mono", "Courier New", "Courier", monospace;
+ z-index: 1000000102;
+}
+
+#demoDebug .log-body{
+ overflow: auto;
+ position: absolute;
+ top: 30px;
+ bottom: 0px;
+ width: 266px;
+ padding: 4px;
+}
+
+#demoDebug .log-debug{
+ color: gray;
+ padding-left: 6px;
+}
+
+#demoDebug .log-info{
+ background: #DFEBFD;
+ padding-left: 6px;
+}
+
+#demoDebug .log-warn{
+ background: #F5FAAD;
+ padding-left: 6px;
+}
+
+#demoDebug .log-error{
+ background: #D2623E;
+ color: black;
+ padding-left: 6px;
+}
+
+#demoDebug .log-group{
+ margin-top: 4px;
+ margin-bottom: 1px;
+ text-decoration: underline;
+}
+
+#demoDebug .log-head{
+ padding: 8px 2px 4px;
+}
+
+#demoJump button,
+#demoDebug .log-head button{
+ border: 1px solid #335EA8;
+ margin: 0 2px;
+ font-size: 11px;
+ background: #EBE9ED;
+ font-family: Tahoma, Verdana, sans-serif;
+}
+
+#demoDebug .log-head button{
+ visibility: visible;
+}
+
+#demoJump button{
+ width: 16px;
+ -moz-appearance: none !important;
+}
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/css/layout_ie.css b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/css/layout_ie.css
new file mode 100644
index 0000000000..70de91b69e
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/css/layout_ie.css
@@ -0,0 +1,11 @@
+#demoFrame{
+ height: expression(document.body.offsetHeight - 40);
+}
+
+#demoDebug{
+ height: expression(document.body.offsetHeight - 184);
+}
+
+#demoDebug .log-body{
+ height: expression(document.body.offsetHeight - 214);
+}
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Atom_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Atom_1.html
new file mode 100644
index 0000000000..3a8078e1bf
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Atom_1.html
@@ -0,0 +1,73 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>qx.ui.basic.Atom is the parent class for buttons, menu entries, icons, checkboxes. While you can do,
+ you usually don't have to instantiate qx.ui.basic.Atom directly.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ // test no1
+ var nl1 = new qx.ui.basic.Atom("Test #1", "icon/16/actions/view-refresh.png", 16, 16);
+ nl1.setTop(48);
+ nl1.setLeft(20);
+ nl1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ nl1.setBackgroundColor(new qx.renderer.color.Color("white"));
+ nl1.setPadding(4);
+ d.add(nl1);
+
+ // test no2
+ var nl2 = new qx.ui.basic.Atom("Test #2");
+ nl2.setTop(48);
+ nl2.setLeft(120);
+ nl2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ nl2.setBackgroundColor(new qx.renderer.color.Color("white"));
+ nl2.setPadding(4);
+ d.add(nl2);
+
+ // test no3
+ var nl3 = new qx.ui.basic.Atom(null, "icon/16/actions/view-refresh.png");
+ nl3.setTop(48);
+ nl3.setLeft(200);
+ nl3.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ nl3.setBackgroundColor(new qx.renderer.color.Color("white"));
+ nl3.setPadding(4);
+ d.add(nl3);
+
+ // test no4
+ var nl4 = new qx.ui.basic.Atom("<span style='font-size:14px'>Some great HTML</span><br/>for <b>you</b>", "icon/32/actions/view-refresh.png");
+ nl4.setTop(48);
+ nl4.setLeft(250);
+ nl4.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ nl4.setBackgroundColor(new qx.renderer.color.Color("white"));
+ nl4.setPadding(4);
+ d.add(nl4);
+
+ // test no5
+ var nl5 = new qx.ui.basic.Atom(qx.html.Textile.textilize("*File Information*:\nJPEG-Photo\nCreated: 01/03/05"), "icon/48/apps/preferences-desktop-theme.png");
+ with(nl5)
+ {
+ setTop(200);
+ setLeft(20);
+ setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ setPadding(3, 6);
+ };
+ d.add(nl5);
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Atom_2.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Atom_2.html
new file mode 100644
index 0000000000..dcbf546b4d
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Atom_2.html
@@ -0,0 +1,172 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Some more complex tests for qx.ui.basic.Atom.</p>
+ <p>You can change all the properties before "really creating" the object or any time after this was done.</p>
+ </div>
+
+ <div style="display:none" id="control">
+ <p>
+ Width:
+ <a href="javascript://" onclick="void(at1.setWidth(null))">null</a> |
+ <a href="javascript://" onclick="void(at1.setWidth('auto'))">auto</a> |
+ <a href="javascript://" onclick="void(at1.setWidth(25))">25</a> |
+ <a href="javascript://" onclick="void(at1.setWidth(50))">50</a> |
+ <a href="javascript://" onclick="void(at1.setWidth(100))">100</a> |
+ <a href="javascript://" onclick="void(at1.setWidth(200))">200</a>
+ </p>
+ <p>
+ Height:
+ <a href="javascript://" onclick="void(at1.setHeight(null))">null</a> |
+ <a href="javascript://" onclick="void(at1.setHeight('auto'))">auto</a> |
+ <a href="javascript://" onclick="void(at1.setHeight(25))">25</a> |
+ <a href="javascript://" onclick="void(at1.setHeight(50))">50</a> |
+ <a href="javascript://" onclick="void(at1.setHeight(100))">100</a> |
+ <a href="javascript://" onclick="void(at1.setHeight(200))">200</a>
+ </p>
+ <hr/>
+ <p>
+ Label Size:
+ <a href="javascript://" onclick="void(at1.setLabel(null))">null</a> |
+ <a href="javascript://" onclick="void(at1.setLabel('short'))">short</a> |
+ <a href="javascript://" onclick="void(at1.setLabel('some cool label'))">medium</a> |
+ <a href="javascript://" onclick="void(at1.setLabel('ultra long label description'))">long</a> |
+ <a href="javascript://" onclick="void(at1.setLabel('<b>hello <i>world</i></b>'))">html</a> |
+ <a href="javascript://" onclick="void(at1.setLabel('<p>Hello tester.</p><ul><li>cool</li><li><b>test</b></li><li>file</li></ul>'))">complex</a>
+ </p>
+ <p>
+ Icon Size:
+ <a href="javascript://" onclick="void(at1.setIcon(null))">null</a> |
+ <a href="javascript://" onclick="void(at1.setIcon('icon/16/apps/accessories-date.png'))">16px</a> |
+ <a href="javascript://" onclick="void(at1.setIcon('icon/32/actions/format-color.png'))">32px</a> |
+ <a href="javascript://" onclick="void(at1.setIcon('icon/48/devices/media-flash.png'))">48px</a>
+ </p>
+ <p>
+ Icon Position:
+ <a href="javascript://" onclick="void(at1.setIconPosition('top'))">top</a> |
+ <a href="javascript://" onclick="void(at1.setIconPosition('right'))">right</a> |
+ <a href="javascript://" onclick="void(at1.setIconPosition('bottom'))">bottom</a> |
+ <a href="javascript://" onclick="void(at1.setIconPosition('left'))">left</a>
+ </p>
+ <p>
+ Spacing:
+ <a href="javascript://" onclick="void(at1.setSpacing(0))">0</a> |
+ <a href="javascript://" onclick="void(at1.setSpacing(2))">2</a> |
+ <a href="javascript://" onclick="void(at1.setSpacing(4))">4</a> |
+ <a href="javascript://" onclick="void(at1.setSpacing(6))">6</a> |
+ <a href="javascript://" onclick="void(at1.setSpacing(8))">8</a> |
+ <a href="javascript://" onclick="void(at1.setSpacing(10))">10</a> |
+ <a href="javascript://" onclick="void(at1.setSpacing(25))">25</a> |
+ <a href="javascript://" onclick="void(at1.setSpacing(50))">50</a>
+ </p>
+ <hr/>
+ <p>
+ Show:
+ <a href="javascript://" onclick="void(at1.setShow('none'))">None</a> |
+ <a href="javascript://" onclick="void(at1.setShow('label'))">Label</a> |
+ <a href="javascript://" onclick="void(at1.setShow('icon'))">Icon</a> |
+ <a href="javascript://" onclick="void(at1.setShow('both'))">Both</a>
+ </p>
+ <hr/>
+ <p>
+ Horizontal Children Align:
+ <a href="javascript://" onclick="void(at1.setHorizontalChildrenAlign('left'))">left</a> |
+ <a href="javascript://" onclick="void(at1.setHorizontalChildrenAlign('center'))">center</a> |
+ <a href="javascript://" onclick="void(at1.setHorizontalChildrenAlign('right'))">right</a>
+ </p>
+ <p>
+ Vertical Children Align:
+ <a href="javascript://" onclick="void(at1.setVerticalChildrenAlign('top'))">top</a> |
+ <a href="javascript://" onclick="void(at1.setVerticalChildrenAlign('middle'))">middle</a> |
+ <a href="javascript://" onclick="void(at1.setVerticalChildrenAlign('bottom'))">bottom</a>
+ </p>
+ <hr/>
+ <p>
+ Padding:
+ <a href="javascript://" onclick="void(at1.setPadding(null))">None</a> |
+ <a href="javascript://" onclick="void(at1.setPadding(2, 4))">2, 4</a> |
+ <a href="javascript://" onclick="void(at1.setPadding(4, 8))">4, 8</a> |
+ <a href="javascript://" onclick="void(at1.setPadding(16))">16</a>
+ </p>
+ <p>
+ Border:
+ <a href="javascript://" onclick="void(at1.setBorder(null))">null</a> |
+ <a href="javascript://" onclick="void(at1.setBorder(new qx.renderer.border.Border(1, 'solid', 'black')))">1</a> |
+ <a href="javascript://" onclick="void(at1.setBorder(new qx.renderer.border.Border(5, 'solid', 'black')))">5</a> |
+ <a href="javascript://" onclick="void(at1.setBorder(new qx.renderer.border.Border(10, 'solid', 'black')))">10</a> |
+ <a href="javascript://" onclick="void(at1.setBorder(new qx.renderer.border.Border(25, 'solid', 'black')))">25</a> |
+ <a href="javascript://" onclick="void(at1.setBorder(qx.renderer.border.BorderPresets.getInstance().outset))">outset</a> |
+ <a href="javascript://" onclick="void(at1.setBorder(qx.renderer.border.BorderPresets.getInstance().inset))">inset</a>
+ </p>
+ <hr/>
+ <p>
+ Opacity:
+ <a href="javascript://" onclick="void(at1.setOpacity(null))">null</a> |
+ <a href="javascript://" onclick="void(at1.setOpacity(0))">0</a> |
+ <a href="javascript://" onclick="void(at1.setOpacity(0.25))">0.25</a> |
+ <a href="javascript://" onclick="void(at1.setOpacity(0.5))">0.5</a> |
+ <a href="javascript://" onclick="void(at1.setOpacity(0.75))">0.75</a> |
+ <a href="javascript://" onclick="void(at1.setOpacity(1))">1</a>
+ </p>
+ <p>
+ Enabled:
+ <a href="javascript://" onclick="void(at1.setEnabled(false))">false</a> |
+ <a href="javascript://" onclick="void(at1.setEnabled(true))">true</a>
+ </p>
+ </div>
+
+ <script type="text/javascript">
+ var at1;
+
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ at1 = new qx.ui.basic.Atom("My first qx.ui.basic.Atom", "icon/32/actions/format-color.png");
+
+ with(at1)
+ {
+ setTop(48);
+ setLeft(20);
+
+ setIconPosition("right");
+
+ setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ setBackgroundColor(new qx.renderer.color.Color("white"));
+ setPadding(2, 4);
+ };
+
+ var ct1 = new qx.ui.basic.Label(document.getElementById("control").innerHTML);
+
+ with(ct1)
+ {
+ setWidth(300);
+ setRight(335);
+
+ setHeight(null);
+ setTop(48);
+ setBottom(48);
+
+ setOverflow("auto");
+
+ setBackgroundColor(new qx.renderer.color.Color("white"));
+ setBorder(qx.renderer.border.BorderPresets.getInstance().groove);
+ setPadding(10);
+ };
+
+ d.add(at1, ct1);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Atom_3.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Atom_3.html
new file mode 100644
index 0000000000..675988a65a
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Atom_3.html
@@ -0,0 +1,39 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Testing the new flash support for qx.ui.basic.Atom</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+ var a;
+
+ for (var i=1; i<11; i++)
+ {
+ var a = new qx.ui.basic.Atom("Flash Atom #" + i, "icon/16/actions/view-refresh.png", 16, 16, "./image/flash/color/file" + i + ".swf");
+
+ a.setTop(48 + ((i-1)*30));
+ a.setLeft(20);
+ a.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ a.setBackgroundColor(new qx.renderer.color.Color("white"));
+ a.setPadding(4);
+
+ d.add(a);
+ };
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ButtonView_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ButtonView_1.html
new file mode 100644
index 0000000000..f491ac2cba
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ButtonView_1.html
@@ -0,0 +1,89 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>qx.ui.pageview.buttonview.ButtonView implementation</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var bs = new qx.ui.pageview.buttonview.ButtonView;
+
+ bs.setLocation(20, 48);
+ bs.setRight(335);
+ bs.setBottom(48);
+
+ var bsb1 = new qx.ui.pageview.buttonview.Button("Display", "icon/32/devices/video-display.png");
+ var bsb2 = new qx.ui.pageview.buttonview.Button("Bug", "icon/32/apps/graphics-snapshot.png");
+ var bsb3 = new qx.ui.pageview.buttonview.Button("Colors", "icon/32/actions/format-color.png");
+ var bsb4 = new qx.ui.pageview.buttonview.Button("Icons", "icon/32/apps/preferences-desktop-theme.png");
+ var bsb5 = new qx.ui.pageview.buttonview.Button("Paint", "icon/32/apps/graphics-image-viewer.png");
+ var bsb6 = new qx.ui.pageview.buttonview.Button("Applications", "icon/32/actions/system-run.png");
+ var bsb7 = new qx.ui.pageview.buttonview.Button("System", "icon/32/apps/system-software-update.png");
+
+ bsb1.setChecked(true);
+
+ bs.getBar().add(bsb1, bsb2, bsb3, bsb4, bsb5, bsb6, bsb7);
+
+ var p1 = new qx.ui.pageview.buttonview.Page(bsb1);
+ var p2 = new qx.ui.pageview.buttonview.Page(bsb2);
+ var p3 = new qx.ui.pageview.buttonview.Page(bsb3);
+ var p4 = new qx.ui.pageview.buttonview.Page(bsb4);
+ var p5 = new qx.ui.pageview.buttonview.Page(bsb5);
+ var p6 = new qx.ui.pageview.buttonview.Page(bsb6);
+ var p7 = new qx.ui.pageview.buttonview.Page(bsb7);
+
+ bs.getPane().add(p1, p2, p3, p4, p5, p6, p7);
+
+ var f1 = new qx.ui.form.TextField("Display Input");
+ var f2 = new qx.ui.form.TextField("Penguin Input");
+ var f3 = new qx.ui.form.TextField("Colorize Input");
+ var f4 = new qx.ui.form.TextField("Icons Input");
+ var f5 = new qx.ui.form.TextField("Paint Input");
+ var f6 = new qx.ui.form.TextField("Applications Input");
+ var f7 = new qx.ui.form.TextField("System Input");
+
+ p1.add(f1);
+ p2.add(f2);
+ p3.add(f3);
+ p4.add(f4);
+ p5.add(f5);
+ p6.add(f6);
+ p7.add(f7);
+
+ var r1 = new qx.ui.form.RadioButton("Top", "top", null, true);
+ var r2 = new qx.ui.form.RadioButton("Right", "right");
+ var r3 = new qx.ui.form.RadioButton("Bottom", "bottom");
+ var r4 = new qx.ui.form.RadioButton("Left", "left");
+
+ r1.setTop(50);
+ r2.setTop(70);
+ r3.setTop(90);
+ r4.setTop(110);
+
+ p1.add(r1, r2, r3, r4);
+
+ var rm = new qx.manager.selection.RadioManager(null, [r1, r2, r3, r4]);
+
+ rm.addEventListener("changeSelected", function(e) {
+ bs.setBarPosition(e.getData().getValue());
+ });
+
+ d.add(bs);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ButtonView_2.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ButtonView_2.html
new file mode 100644
index 0000000000..86d6c14d3e
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ButtonView_2.html
@@ -0,0 +1,98 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Yet Another qx.ui.pageview.buttonview.ButtonView Example</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var bs = new qx.ui.pageview.buttonview.ButtonView;
+ bs.set({ left: 20, top: 48, right: 335, bottom: 48 });
+ bs.setBarPosition("left");
+
+ var bsb1 = new qx.ui.pageview.buttonview.Button("Display", "icon/16/devices/video-display.png");
+ var bsb2 = new qx.ui.pageview.buttonview.Button("Organizer", "icon/16/apps/office-organizer.png");
+ var bsb3 = new qx.ui.pageview.buttonview.Button("Colorize", "icon/16/actions/format-color.png");
+ var bsb4 = new qx.ui.pageview.buttonview.Button("Icons", "icon/16/apps/preferences-desktop-theme.png");
+ var bsb5 = new qx.ui.pageview.buttonview.Button("Paint", "icon/16/apps/graphics-image-viewer.png");
+ var bsb6 = new qx.ui.pageview.buttonview.Button("Applications", "icon/16/actions/system-run.png");
+ var bsb7 = new qx.ui.pageview.buttonview.Button("System", "icon/16/apps/system-software-update.png");
+
+ bsb1.setChecked(true);
+
+ bsb1.set({ iconPosition: "left", horizontalChildrenAlign: "left" });
+ bsb2.set({ iconPosition: "left", horizontalChildrenAlign: "left" });
+ bsb3.set({ iconPosition: "left", horizontalChildrenAlign: "left" });
+ bsb4.set({ iconPosition: "left", horizontalChildrenAlign: "left" });
+ bsb5.set({ iconPosition: "left", horizontalChildrenAlign: "left" });
+ bsb6.set({ iconPosition: "left", horizontalChildrenAlign: "left" });
+ bsb7.set({ iconPosition: "left", horizontalChildrenAlign: "left" });
+
+ bs.getBar().add(bsb1, bsb2, bsb3, bsb4, bsb5, bsb6, bsb7);
+
+ bs.getBar().setHorizontalChildrenAlign("center");
+ bs.getBar().setVerticalChildrenAlign("bottom");
+
+ var p1 = new qx.ui.pageview.buttonview.Page(bsb1);
+ var p2 = new qx.ui.pageview.buttonview.Page(bsb2);
+ var p3 = new qx.ui.pageview.buttonview.Page(bsb3);
+ var p4 = new qx.ui.pageview.buttonview.Page(bsb4);
+ var p5 = new qx.ui.pageview.buttonview.Page(bsb5);
+ var p6 = new qx.ui.pageview.buttonview.Page(bsb6);
+ var p7 = new qx.ui.pageview.buttonview.Page(bsb7);
+
+ bs.getPane().add(p1, p2, p3, p4, p5, p6, p7);
+
+ var f1 = new qx.ui.form.TextField("Display Input");
+ var f2 = new qx.ui.form.TextField("Sunshine Input");
+ var f3 = new qx.ui.form.TextField("Paint Input");
+ var f4 = new qx.ui.form.TextField("Icons Input");
+ var f5 = new qx.ui.form.TextField("Images Input");
+ var f6 = new qx.ui.form.TextField("Applications Input");
+ var f7 = new qx.ui.form.TextField("System Input");
+
+ p1.add(f1);
+ p2.add(f2);
+ p3.add(f3);
+ p4.add(f4);
+ p5.add(f5);
+ p6.add(f6);
+ p7.add(f7);
+
+ var r1 = new qx.ui.form.RadioButton("Top", "top");
+ var r2 = new qx.ui.form.RadioButton("Right", "right");
+ var r3 = new qx.ui.form.RadioButton("Bottom", "bottom");
+ var r4 = new qx.ui.form.RadioButton("Left", "left", null, true);
+
+ r1.setTop(50);
+ r2.setTop(70);
+ r3.setTop(90);
+ r4.setTop(110);
+
+ p1.add(r1, r2, r3, r4);
+
+ var rm = new qx.manager.selection.RadioManager(null, [r1, r2, r3, r4]);
+
+ rm.addEventListener("changeSelected", function(e) {
+ bs.setBarPosition(e.getData().getValue());
+ });
+
+ d.add(bs);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Button_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Button_1.html
new file mode 100644
index 0000000000..35f6c8f336
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Button_1.html
@@ -0,0 +1,73 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Test the qx.ui.form.Button constructor. qx.ui.form.Button is based on qx.ui.basic.Atom.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ function buttonExecute() { this.debug("Executed: " + this.getLabel()); };
+
+ var btn1 = new qx.ui.form.Button("Button No #1");
+ with(btn1)
+ {
+ setTop(48);
+ setLeft(20);
+ addEventListener("execute", buttonExecute);
+ };
+
+ d.add(btn1);
+
+
+
+ var btn2 = new qx.ui.form.Button("Button No #2");
+ with(btn2)
+ {
+ setTop(48);
+ setLeft(120);
+ addEventListener("execute", buttonExecute);
+ setEnabled(false);
+ };
+
+ d.add(btn2);
+
+
+
+ var btn3 = new qx.ui.form.Button("Button No #3");
+ with(btn3)
+ {
+ setTop(48);
+ setLeft(220);
+ addEventListener("execute", buttonExecute);
+ };
+
+ d.add(btn3);
+
+
+ var btn4 = new qx.ui.form.Button("Button No #4", "icon/16/actions/go-next.png");
+ with(btn4)
+ {
+ setTop(48);
+ setLeft(320);
+ addEventListener("execute", buttonExecute);
+ };
+
+ d.add(btn4);
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/CheckBox_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/CheckBox_1.html
new file mode 100644
index 0000000000..f9b205bc3a
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/CheckBox_1.html
@@ -0,0 +1,104 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Tests for qx.ui.form.CheckBox. qx.ui.form.CheckBox extends qx.ui.basic.Atom and so it inherits all the options and properties defined there.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var c1 = new qx.ui.form.CheckBox("Send Data to Server", "c1checked", "c1");
+ with(c1)
+ {
+ setTop(48);
+ setLeft(20);
+ };
+ d.add(c1);
+
+ var c2 = new qx.ui.form.CheckBox("Delete all Data on Server", "c2checked", "c2");
+ with(c2)
+ {
+ setTop(78);
+ setLeft(20);
+ };
+ d.add(c2);
+ c2.setChecked(true);
+
+
+ var c3 = new qx.ui.form.CheckBox("Top Checkbox", "c3checked", "c3");
+ with(c3)
+ {
+ setTop(120);
+ setLeft(20);
+ setIconPosition("top");
+ };
+ d.add(c3);
+
+ var c4 = new qx.ui.form.CheckBox("Bottom Checkbox", "c4checked", "c4");
+ with(c4)
+ {
+ setTop(120);
+ setLeft(140);
+ setIconPosition("bottom");
+ };
+ d.add(c4);
+
+
+ var c5 = new qx.ui.form.CheckBox("Left Checkbox", "c5checked", "c5");
+ with(c5)
+ {
+ setTop(180);
+ setLeft(20);
+ setIconPosition("left");
+ };
+ d.add(c5);
+
+ var c6 = new qx.ui.form.CheckBox("Right Checkbox", "c6checked", "c6");
+ with(c6)
+ {
+ setTop(180);
+ setLeft(140);
+ setIconPosition("right");
+ };
+ d.add(c6);
+
+ var c7 = new qx.ui.form.CheckBox(null, "c7checked", "c7");
+ with(c7)
+ {
+ setTop(250);
+ setLeft(20);
+ };
+ d.add(c7);
+
+ var c8 = new qx.ui.form.CheckBox(null, "c7checked", "c7");
+ with(c8)
+ {
+ setTop(300);
+ setLeft(20);
+ setLabel("Label pure");
+ setShow("label");
+ setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ setBackgroundColor(new qx.renderer.color.Color("red"));
+ };
+ d.add(c8);
+
+ c8.addEventListener("changeChecked", function(e) {
+ this.setBackgroundColor(new qx.renderer.color.Color(this.getChecked() ? "green" : "red"));
+ });
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ColorPopup_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ColorPopup_1.html
new file mode 100644
index 0000000000..94aa182cf9
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ColorPopup_1.html
@@ -0,0 +1,83 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Test for qx.ui.component.ColorPopup.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var mybtn = new qx.ui.form.Button("Open Popup");
+ mybtn.setLocation(20, 48);
+ mybtn.addEventListener("execute", function() {
+ mypop.setTop(qx.html.Location.getPageBoxBottom(this.getElement()));
+ mypop.setLeft(qx.html.Location.getPageBoxLeft(this.getElement()));
+ mypop.show();
+ });
+
+ var myview = new qx.ui.basic.Label("Selected Color");
+ myview.setBorder(qx.renderer.border.BorderPresets.getInstance().inset);
+ myview.setLocation(100, 48);
+ myview.setPadding(3, 6);
+ myview.setBackgroundImage("core/dotted_white.gif");
+ myview.addToDocument();
+
+ var mytables =
+ {
+ core : {
+ label : "Basic Colors",
+ values : [ "#000", "#333", "#666", "#999", "#CCC", "#FFF", "red", "green", "blue", "yellow", "teal", "maroon" ]
+ },
+
+ template : {
+ label : "Template Colors",
+ values : [ "#B07B30", "#B07BC9", "#E3AEC9", "#7A2A53" ]
+ },
+
+ recent : {
+ label : "Recent Colors",
+
+ // In this case we need named colors or rgb-value-strings, hex is not allowed currently
+ values : [ "rgb(122,195,134)", "orange" ]
+ }
+ }
+
+ var mypop = new qx.ui.component.ColorPopup(mytables);
+ mypop.setLocation(100, 100);
+ mypop.setValue(new qx.renderer.color.Color("#23F3C1"));
+
+ mybtn.addToDocument();
+ mypop.addToDocument();
+
+ mypop.addEventListener("changeValue", function(e) {
+ this.debug("Value Listener: " + e.getData());
+ myview.setBackgroundColor(e.getData());
+ myview.setBackgroundImage(e.getData() ? null : "core/dotted_white.gif");
+ });
+
+ mypop.addEventListener("changeRed", function(e) {
+ this.debug("Red Listener: " + e.getData());
+ });
+
+ mypop.addEventListener("changeGreen", function(e) {
+ this.debug("Green Listener: " + e.getData());
+ });
+
+ mypop.addEventListener("changeBlue", function(e) {
+ this.debug("Blue Listener: " + e.getData());
+ });
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ColorSelector_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ColorSelector_1.html
new file mode 100644
index 0000000000..2a4a39a728
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ColorSelector_1.html
@@ -0,0 +1,29 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Test for qx.ui.component.ColorSelector.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var mycolor = new qx.ui.component.ColorSelector;
+
+ mycolor.setLocation(50, 50);
+
+ qx.ui.core.ClientDocument.getInstance().add(mycolor);
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ColorSelector_2.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ColorSelector_2.html
new file mode 100644
index 0000000000..e43a1e9434
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ColorSelector_2.html
@@ -0,0 +1,30 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Test for qx.ui.component.ColorSelector.</p>
+ <p>Adding a default/previous/old color value to compare it with the new selection.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var mycolor = new qx.ui.component.ColorSelector(130, 180, 100);
+
+ mycolor.setLocation(50, 50);
+
+ qx.ui.core.ClientDocument.getInstance().add(mycolor);
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ComboBoxEx_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ComboBoxEx_1.html
new file mode 100644
index 0000000000..956fd1c391
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ComboBoxEx_1.html
@@ -0,0 +1,230 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+ <script type="text/javascript">
+
+function getTestData() {
+ var testData = [
+ [ '1', 'One' ],
+ [ '2', 'Two' ],
+ [ '3', 'Three' ],
+ [ '4', 'Four' ],
+ [ '5', 'Five' ],
+ [ '6', 'Six' ],
+ [ '7', 'Seven' ],
+ [ '8', 'Eight' ],
+ [ '9', 'Nine' ],
+ [ '10', 'Ten' ],
+ [ '11', 'Eleven' ],
+ [ '12', 'Twelve' ],
+ [ '13', 'Thirteen' ],
+ [ '14', 'Fourteen' ],
+ [ '15', 'Fiveteen' ],
+ [ '16', 'Sixteen' ],
+ [ '17', 'Seventeen' ],
+ // Test of a long string
+ [ '1921', 'One thousand nine hundred twenty one' ]
+ ];
+ for (var i = 0; i < testData.length; i++) {
+ testData[i].push('widget/arrows/'+(i % 2 ? 'up':'down')+'_small.gif');
+ testData[i].push('Extra data '+i);
+ }
+ return testData;
+}
+
+qx.OO.defineClass('Box', qx.ui.layout.BoxLayout, function() {
+ qx.ui.layout.BoxLayout.apply(this, arguments);
+ this.auto();
+});
+
+qx.OO.defineClass('GroupBox', qx.ui.groupbox.GroupBox, function() {
+ qx.ui.groupbox.GroupBox.apply(this, arguments);
+ this.auto();
+});
+
+qx.core.Init.getInstance().defineMain(function() {
+ // Shortcuts
+ var form = qx.ui.form;
+ Label = qx.ui.basic.Label;
+ var testData = getTestData();
+
+ //###1st row: combo
+
+ combo = new form.ComboBoxEx;
+ var butSize = new form.Button('Size text field to content');
+ butSize.addEventListener('execute', function() {
+ combo.sizeTextFieldToContent();
+ });
+
+ var boxCombo2 = new Box;
+ with (boxCombo2) {
+ setSpacing(10);
+ add(combo, butSize);
+ }
+ var boxCombo = new GroupBox('This is the ComboBoxEx under test');
+ boxCombo.add(boxCombo2);
+
+ //###2nd row: Test of simple properties
+ var cEd = new form.CheckBox('Editable');
+ cEd.setChecked(combo.getEditable());
+ cEd.addEventListener('changeChecked', function() {
+ combo.setEditable(cEd.isChecked());
+ });
+
+ var cEnsure = new form.CheckBox('Ensure something selected');
+ cEnsure.setChecked(combo.getEnsureSomethingSelected());
+ cEnsure.addEventListener('changeChecked', function() {
+ combo.setEnsureSomethingSelected(cEnsure.isChecked());
+ });
+
+ var cAllowSearch = new form.CheckBox('Allow searching');
+ cAllowSearch.setChecked(combo.getAllowSearch());
+ cAllowSearch.addEventListener('changeChecked', function() {
+ combo.setAllowSearch(cAllowSearch.isChecked());
+ });
+
+ var cIdCol = new form.CheckBox('ID column visible');
+ cIdCol.setChecked(combo.isIdColumnVisible());
+ cIdCol.addEventListener('changeChecked', function() {
+ combo.setIdColumnVisible(cIdCol.isChecked());
+ });
+
+ var fieldItems = new form.Spinner(0, 0, testData.length);
+ fieldItems._manager.addEventListener('changeValue', function() {
+ var sel = [], count = fieldItems.getValue();
+ for (var i = 0; i < count; i++) {
+ sel.push(testData[i]);
+ }
+ combo.setSelection(sel);
+ });
+ fieldItems.setValue(15);
+
+ var boxProp2 = new Box;
+ with (boxProp2) {
+ setSpacing(10);
+ add(cEd, cEnsure, cAllowSearch, cIdCol, new Label('Number of items in list'), fieldItems);
+ }
+ var boxProp = new GroupBox('Test of simple properties');
+ boxProp.add(boxProp2);
+
+ //###Test of headers
+ var allHeaders = [ 'ID', 'Description', 'Img', 'Extra info' ];
+ var rb1 = new form.RadioButton('1', '1');
+ var rb2 = new form.RadioButton('2', '2');
+ rb2.setChecked(true);
+ var rb3 = new form.RadioButton('3', '3');
+ var rb4 = new form.RadioButton('4', '4');
+
+ var fieldHeaders = new qx.manager.selection.RadioManager('headers', [ rb1, rb2, rb3, rb4 ]);
+ fieldHeaders.addEventListener("changeSelected", function(e) {
+ var headers = [], count = Number(e.getData().getValue());
+ for (var i = 0; i < count; i++) {
+ headers.push(allHeaders[i]);
+ }
+ combo.setColumnHeaders(headers);
+ });
+
+ var butChangeHeaders = new form.Button('Add * to headers');
+ // This tests changing the headers, but not the number of columns
+ butChangeHeaders.addEventListener('execute', function() {
+ var headers = combo.getColumnHeaders();
+ for (var i = 0; i < headers.length; i++) {
+ headers[i] += '*';
+ }
+ combo.setColumnHeaders(headers);
+ });
+
+ var boxHeaders2 = new Box;
+ with (boxHeaders2) {
+ setSpacing(10);
+ add(new Label('# of headers'), rb1, rb2, rb3, rb4, butChangeHeaders);
+ }
+ var boxHeaders = new GroupBox('Test headers');
+ boxHeaders.add(boxHeaders2);
+
+ var fieldMaxRows = new form.Spinner(2, combo.getMaxVisibleRows(), 20);
+ fieldMaxRows._manager.addEventListener('changeValue', function() {
+ combo.setMaxVisibleRows(fieldMaxRows.getValue());
+ });
+ var boxMaxRows = new GroupBox('Max. number of visible rows');
+ boxMaxRows.add(fieldMaxRows);
+
+ var boxRow3 = new Box;
+ boxRow3.add(boxHeaders, boxMaxRows);
+
+ //###Test of showOnTextField
+ var rbDesc = new form.RadioButton('Description', 'description');
+ rbDesc.setChecked(true);
+ var rbIdAndDesc = new form.RadioButton('ID and description', 'idAndDescription');
+ var fieldShowOn = new qx.manager.selection.RadioManager("showOnTextField", [ rbDesc, rbIdAndDesc ]);
+ fieldShowOn.addEventListener("changeSelected", function(e) {
+ combo.setShowOnTextField(e.getData().getValue());
+ });
+
+ var fieldSeparator = new form.TextField;
+ fieldSeparator.setValue(combo.getIdDescriptionSeparator());
+ fieldSeparator.setWidth(50);
+ fieldSeparator.addEventListener('changeValue', function() {
+ combo.setIdDescriptionSeparator(fieldSeparator.getValue());
+ });
+ var boxShowOn2 = new Box;
+ with (boxShowOn2) {
+ setSpacing(10);
+ add(new Label('Show on text field:'), rbDesc, rbIdAndDesc, new Label('Separator between ID and description:'), fieldSeparator);
+ }
+ var boxShowOn = new GroupBox('Test showOnTextField property');
+ boxShowOn.add(boxShowOn2);
+
+ //###Test of get/setValue
+ var fieldValue = new form.TextField;
+ var butSetValue = new form.Button('Set');
+ butSetValue.addEventListener('execute', function() {
+ combo.setValue(fieldValue.getValue());
+ });
+ var butGetValue = new form.Button('Get');
+ butGetValue.addEventListener('execute', function() {
+ fieldValue.setValue(combo.getValue());
+ });
+ var boxVal2 = new Box;
+ with (boxVal2) {
+ setSpacing(10);
+ add(fieldValue, butSetValue, butGetValue);
+ }
+ var boxVal = new GroupBox('Test value property');
+ boxVal.add(boxVal2);
+
+ //###Main box
+ var vbox = new Box('vertical');
+ with (vbox) {
+ setSpacing(10);
+ setTop(50);
+ setLeft(30);
+ add(boxCombo, boxProp, boxRow3, boxShowOn, boxVal);
+ addToDocument();
+ }
+ combo.focus();
+});
+ </script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+ <script type="text/javascript">
+if (console.debug) {
+ with (qx.log.Logger.ROOT_LOGGER) {
+ removeAllAppenders();
+ addAppender(new qx.log.FireBugAppender);
+ setMinLevel(qx.log.Logger.LEVEL_WARN);
+ }
+}
+ </script>
+ <div id="demoDescription">
+ <p>ComboBoxEx is an enhanced version of ComboBox</p>
+ </div>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ComboBox_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ComboBox_1.html
new file mode 100644
index 0000000000..bf3f297be9
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ComboBox_1.html
@@ -0,0 +1,101 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Testing ComboBox implementation.</p>
+ <p>The elements of the popup will be created on the first open of the qx.ui.form.ComboBox.</p>
+ </div>
+
+ <select style="position:absolute; left:300px; top:48px; width: 120px;">
+ <option>Item No 1</option>
+ <option>Item No 2</option>
+ <option>Item No 3</option>
+ <option>Item No 4</option>
+ <option>Item No 5</option>
+ <option>Item No 6</option>
+ <option>Item No 7</option>
+ <option>Item No 8</option>
+ <option>Item No 9</option>
+ <option disabled="true">Item No 10</option>
+ <option>Item No 11</option>
+ <option>Item No 12</option>
+ <option>Item No 13</option>
+ <option>Item No 14</option>
+ <option>Item No 15</option>
+ <option>Item No 16</option>
+ <option>Item No 17</option>
+ <option>Item No 18</option>
+ <option>Item No 19</option>
+ <option disabled="true">Item No 20</option>
+ <option>Item No 21</option>
+ <option>Item No 22</option>
+ <option>Item No 23</option>
+ <option>Item No 24</option>
+ <option>Item No 23</option>
+ <option>Item No 24</option>
+ <option>Item No 25</option>
+ <option>Item No 26</option>
+ <option>Item No 27</option>
+ <option>Item No 28</option>
+ <option>Item No 29</option>
+ <option disabled="true">Item No 30</option>
+ </select>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var c1 = new qx.ui.form.ComboBox;
+ c1.set({ top: 48, left: 20 });
+
+
+
+ var item;
+
+ for(var i=1; i<=30; i++)
+ {
+ item = new qx.ui.form.ListItem("Item No " + i);
+ !(i % 10) && (item.setEnabled(false));
+ c1.add(item);
+ };
+
+
+ c1.setSelected(c1.getList().getFirstChild());
+
+ c1.addEventListener("changeValue", function(e) {
+ this.debug("New value: " + e.getData());
+ });
+
+ c1.addEventListener("changeSelected", function(e) {
+ this.debug("New selected: " + e.getData());
+ });
+
+
+
+
+ var b1 = new qx.ui.form.CheckBox("Editable");
+
+ b1.set({ top: 50, left: 150 });
+
+ b1.addEventListener("changeChecked", function(e) {
+ c1.setEditable(e.getData());
+ });
+
+
+
+ d.add(c1, b1);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Command_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Command_1.html
new file mode 100644
index 0000000000..14472f33f7
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Command_1.html
@@ -0,0 +1,141 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>An example showing global shortcut commands in action. The commands are linked with menu-items, but
+ could also be executed with the corresponding shortcut.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ /* comamnds */
+ var undo_cmd = new qx.client.Command("Ctrl+Z");
+ undo_cmd.addEventListener("execute", function(){ this.debug("undo Command executed"); }, this);
+
+ var redo_cmd = new qx.client.Command("Ctrl+Y");
+ redo_cmd.addEventListener("execute", function(){ this.debug("redo Command executed"); }, this);
+
+ var cut_cmd = new qx.client.Command("Ctrl+X");
+ cut_cmd.addEventListener("execute", function(){ this.debug("cut Command executed"); }, this);
+
+ var copy_cmd = new qx.client.Command("Ctrl+C");
+ copy_cmd.addEventListener("execute", function(){ this.debug("copy Command executed"); }, this);
+
+ var paste_cmd = new qx.client.Command("Ctrl+V");
+ paste_cmd.addEventListener("execute", function(){ this.debug("paste Command executed"); }, this);
+
+ var delete_cmd = new qx.client.Command("Del");
+ delete_cmd.addEventListener("execute", function(){ this.debug("delete Command executed"); }, this);
+
+ var select_all_cmd = new qx.client.Command("Ctrl+A");
+ select_all_cmd.addEventListener("execute", function(){ this.debug("select all Command executed"); }, this);
+
+ var search_cmd = new qx.client.Command("Ctrl+F");
+ search_cmd.addEventListener("execute", function(){ this.debug("search Command executed"); }, this);
+
+ var search_again_cmd = new qx.client.Command("F3");
+ search_again_cmd.addEventListener("execute", function(){ this.debug("search again Command executed"); }, this);
+
+ /* building the menu */
+ var m2 = new qx.ui.menu.Menu;
+
+ var mb2_01 = new qx.ui.menu.Button("New Window");
+ var mb2_02 = new qx.ui.menu.Button("Overlapping");
+ var mb2_03 = new qx.ui.menu.Button("Split Vertical");
+ var mb2_04 = new qx.ui.menu.Button("Split Horizontal");
+ var mb2_05 = new qx.ui.menu.Button("Next Window");
+ var mb2_06 = new qx.ui.menu.Button("Previous Window");
+
+ m2.add(mb2_01, mb2_02, mb2_03, mb2_04, mb2_05, mb2_06);
+
+
+ var m3 = new qx.ui.menu.Menu;
+
+ var mb3_01 = new qx.ui.menu.Button("Tahoma, 11pt");
+ var mb3_02 = new qx.ui.menu.Button("Tahoma, 12pt");
+ var mb3_03 = new qx.ui.menu.Button("Tahoma, 13pt");
+ var mb3_04 = new qx.ui.menu.Button("Tahoma, 14pt");
+ var mb3_05 = new qx.ui.menu.Button("Tahoma, 15pt");
+
+ m3.add(mb3_01, mb3_02, mb3_03, mb3_04, mb3_05);
+
+
+ var m1 = new qx.ui.menu.Menu;
+
+ var mb1_01 = new qx.ui.menu.Button("View/Lists");
+ var mb1_02 = new qx.ui.menu.Button("Syntax Highlighting");
+ var ms1 = new qx.ui.menu.Separator();
+ var mb1_03 = new qx.ui.menu.Button("Window Font");
+ var mb1_04 = new qx.ui.menu.Button("Printer Font", null, null, m3);
+ var ms2 = new qx.ui.menu.Separator();
+ var mb1_05 = new qx.ui.menu.Button("Undo", null, undo_cmd);
+ var mb1_06 = new qx.ui.menu.Button("Redo", null, redo_cmd);
+ var ms3 = new qx.ui.menu.Separator();
+ var mb1_07 = new qx.ui.menu.Button("Cut", "icon/16/actions/edit-cut.png", cut_cmd);
+ var mb1_08 = new qx.ui.menu.Button("Copy", "icon/16/actions/edit-copy.png", copy_cmd);
+ var mb1_09 = new qx.ui.menu.Button("Paste", "icon/16/actions/edit-paste.png", paste_cmd);
+ var mb1_10 = new qx.ui.menu.Button("Delete", "icon/16/actions/edit-delete.png", delete_cmd);
+ var mb1_11 = new qx.ui.menu.Button("Select All", null, select_all_cmd);
+ var ms4 = new qx.ui.menu.Separator();
+ var mb1_12 = new qx.ui.menu.Button("Search", null, search_cmd);
+ var mb1_13 = new qx.ui.menu.Button("Search Again", null, search_again_cmd);
+ var ms5 = new qx.ui.menu.Separator();
+ var mb1_14 = new qx.ui.menu.Button("View", null, null, m2);
+ var mb1_15 = new qx.ui.menu.Button("Editor Settings...");
+ var mb1_16 = new qx.ui.menu.Button("Editor Plugins");
+ var mb1_17 = new qx.ui.menu.Button("Framework Settings");
+
+ m1.add(mb1_01, mb1_02, ms1, mb1_03, mb1_04, ms2, mb1_05, mb1_06, ms3, mb1_07, mb1_08, mb1_09, mb1_10, mb1_11, ms4, mb1_12, mb1_13, ms5, mb1_14, mb1_15, mb1_16, mb1_17);
+
+
+ d.add(m1, m2, m3);
+
+
+ var w1 = new qx.ui.form.Button("Open");
+
+ w1.setTop(48);
+ w1.setLeft(20);
+
+ w1.addEventListener("click", function(e)
+ {
+ if (m1.isSeeable())
+ {
+ m1.hide();
+ }
+ else
+ {
+ var el = this.getElement();
+
+ m1.setLeft(qx.html.Location.getPageBoxLeft(el));
+ m1.setTop(qx.html.Location.getPageBoxBottom(el));
+
+ m1.show();
+ };
+
+ e.setPropagationStopped(true);
+ });
+
+ w1.addEventListener("mousedown", function(e)
+ {
+ e.setPropagationStopped(true);
+ });
+
+
+ d.add(w1);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Command_2.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Command_2.html
new file mode 100644
index 0000000000..2fdeb1cb3c
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Command_2.html
@@ -0,0 +1,186 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>An example showing global shortcut commands in action. The commands are linked with menu-items, but
+ could also be executed with the corresponding shortcut.</p>
+ <p>An objectmanager is used to disable/enable a specific command (del-Key) to make available for text-editing
+ in the textfield of the window. When the window is closed the command gets re-enabled.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ /* comamnds */
+ var undo_cmd = new qx.client.Command("Ctrl+Z");
+ undo_cmd.addEventListener("execute", function(){ this.debug("undo Command executed"); }, this);
+
+ var redo_cmd = new qx.client.Command("Ctrl+Y");
+ redo_cmd.addEventListener("execute", function(){ this.debug("redo Command executed"); }, this);
+
+ var cut_cmd = new qx.client.Command("Ctrl+X");
+ cut_cmd.addEventListener("execute", function(){ this.debug("cut Command executed"); }, this);
+
+ var copy_cmd = new qx.client.Command("Ctrl+C");
+ copy_cmd.addEventListener("execute", function(){ this.debug("copy Command executed"); }, this);
+
+ var paste_cmd = new qx.client.Command("Ctrl+V");
+ paste_cmd.addEventListener("execute", function(){ this.debug("paste Command executed"); }, this);
+
+ var delete_cmd = new qx.client.Command("Del");
+ delete_cmd.addEventListener("execute", function(){ this.debug("delete Command executed"); }, this);
+
+ var select_all_cmd = new qx.client.Command("Ctrl+A");
+ select_all_cmd.addEventListener("execute", function(){ this.debug("select all Command executed"); }, this);
+
+ var search_cmd = new qx.client.Command("Ctrl+F");
+ search_cmd.addEventListener("execute", function(){ this.debug("search Command executed"); }, this);
+
+ var search_again_cmd = new qx.client.Command("F3");
+ search_again_cmd.addEventListener("execute", function(){ this.debug("search again Command executed"); }, this);
+
+
+ /* objectmanager for all commands which should be disabled when opening the window */
+ var cmd_manager = new qx.manager.object.ObjectManager;
+ cmd_manager.add(delete_cmd);
+
+
+ /* building the menu */
+ var m2 = new qx.ui.menu.Menu;
+
+ var mb2_01 = new qx.ui.menu.Button("New Window");
+ var mb2_02 = new qx.ui.menu.Button("Overlapping");
+ var mb2_03 = new qx.ui.menu.Button("Split Vertical");
+ var mb2_04 = new qx.ui.menu.Button("Split Horizontal");
+ var mb2_05 = new qx.ui.menu.Button("Next Window");
+ var mb2_06 = new qx.ui.menu.Button("Previous Window");
+
+ m2.add(mb2_01, mb2_02, mb2_03, mb2_04, mb2_05, mb2_06);
+
+
+ var m3 = new qx.ui.menu.Menu;
+
+ var mb3_01 = new qx.ui.menu.Button("Tahoma, 11pt");
+ var mb3_02 = new qx.ui.menu.Button("Tahoma, 12pt");
+ var mb3_03 = new qx.ui.menu.Button("Tahoma, 13pt");
+ var mb3_04 = new qx.ui.menu.Button("Tahoma, 14pt");
+ var mb3_05 = new qx.ui.menu.Button("Tahoma, 15pt");
+
+ m3.add(mb3_01, mb3_02, mb3_03, mb3_04, mb3_05);
+
+
+ var m1 = new qx.ui.menu.Menu;
+
+ var mb1_01 = new qx.ui.menu.Button("View/Lists");
+ var mb1_02 = new qx.ui.menu.Button("Syntax Highlighting");
+ var ms1 = new qx.ui.menu.Separator();
+ var mb1_03 = new qx.ui.menu.Button("Window Font");
+ var mb1_04 = new qx.ui.menu.Button("Printer Font", null, null, m3);
+ var ms2 = new qx.ui.menu.Separator();
+ var mb1_05 = new qx.ui.menu.Button("Undo", null, undo_cmd);
+ var mb1_06 = new qx.ui.menu.Button("Redo", null, redo_cmd);
+ var ms3 = new qx.ui.menu.Separator();
+ var mb1_07 = new qx.ui.menu.Button("Cut", "icon/16/actions/edit-cut.png", cut_cmd);
+ var mb1_08 = new qx.ui.menu.Button("Copy", "icon/16/actions/edit-copy.png", copy_cmd);
+ var mb1_09 = new qx.ui.menu.Button("Paste", "icon/16/actions/edit-paste.png", paste_cmd);
+ var mb1_10 = new qx.ui.menu.Button("Delete", "icon/16/actions/edit-delete.png", delete_cmd);
+ var mb1_11 = new qx.ui.menu.Button("Select All", null, select_all_cmd);
+ var ms4 = new qx.ui.menu.Separator();
+ var mb1_12 = new qx.ui.menu.Button("Search", null, search_cmd);
+ var mb1_13 = new qx.ui.menu.Button("Search Again", null, search_again_cmd);
+ var ms5 = new qx.ui.menu.Separator();
+ var mb1_14 = new qx.ui.menu.Button("View", null, null, m2);
+ var mb1_15 = new qx.ui.menu.Button("Editor Settings...");
+ var mb1_16 = new qx.ui.menu.Button("Editor Plugins");
+ var mb1_17 = new qx.ui.menu.Button("Framework Settings");
+
+ m1.add(mb1_01, mb1_02, ms1, mb1_03, mb1_04, ms2, mb1_05, mb1_06, ms3, mb1_07, mb1_08, mb1_09, mb1_10, mb1_11, ms4, mb1_12, mb1_13, ms5, mb1_14, mb1_15, mb1_16, mb1_17);
+
+
+ d.add(m1, m2, m3);
+
+
+ /* button to open menu */
+ var w1 = new qx.ui.form.Button("Open");
+
+ w1.setTop(48);
+ w1.setLeft(20);
+
+ w1.addEventListener("click", function(e)
+ {
+ if (m1.isSeeable())
+ {
+ m1.hide();
+ }
+ else
+ {
+ var el = this.getElement();
+
+ m1.setLeft(qx.html.Location.getPageBoxLeft(el));
+ m1.setTop(qx.html.Location.getPageBoxBottom(el));
+
+ m1.show();
+ };
+
+ e.setPropagationStopped(true);
+ });
+
+ w1.addEventListener("mousedown", function(e)
+ {
+ e.setPropagationStopped(true);
+ });
+
+
+ /* window */
+ var window1 = new qx.ui.window.Window("Test");
+ window1.set({ top: 100, left: 100, width: 300, height: 200, allowMaximize: false, allowMinimize: false });
+
+ window1.addEventListener("beforeAppear", function(e){
+ textField.setValue("");
+ });
+
+ window1.addEventListener("beforeDisappear", function(e){
+ cmd_manager.enableAll();
+ });
+
+ /* label */
+ var label1 = new qx.ui.basic.Label("Please enter your Name");
+ label1.setTop(20);
+ label1.setLeft(8);
+
+ /* textfield */
+ var textField = new qx.ui.form.TextField;
+ textField.setTop(20);
+ textField.setLeft(140);
+
+ window1.add(label1, textField);
+
+
+ /* button to open window */
+ var w2 = new qx.ui.form.Button("Open Window");
+ w2.setTop(48);
+ w2.setLeft(100);
+
+ w2.addEventListener("execute", function(e){
+ cmd_manager.disableAll();
+ window1.open();
+ });
+
+
+ d.add(w1, window1, w2);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/DateChooser_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/DateChooser_1.html
new file mode 100644
index 0000000000..ffa537ecfa
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/DateChooser_1.html
@@ -0,0 +1,31 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>The DateChooser shows calendar and allows choosing a date.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var chooser = new qx.ui.component.DateChooser;
+ chooser.setLocation(10, 50);
+ chooser.setWidth("auto");
+ chooser.setHeight("auto");
+ d.add(chooser);
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Drag_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Drag_1.html
new file mode 100644
index 0000000000..415bfb7c35
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Drag_1.html
@@ -0,0 +1,57 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Show one way to drag a widget around the screen.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var a1 = new qx.ui.basic.Atom("Drag Me");
+ a1.set({ backgroundColor: "white", border: qx.renderer.border.BorderPresets.getInstance().groove });
+ a1.setPadding(10);
+ a1.setLocation(20, 48);
+ d.add(a1);
+
+
+ a1.addEventListener("mousedown", handleMouseDown);
+ a1.addEventListener("mousemove", handleMouseMove);
+ a1.addEventListener("mouseup", handleMouseUp);
+
+ function handleMouseDown(e)
+ {
+ this.setCapture(true);
+ a1._offsetX = e.getPageX() - a1.getLeft();
+ a1._offsetY = e.getPageY() - a1.getTop();
+ }
+
+ function handleMouseMove(e)
+ {
+ if (this.getCapture())
+ {
+ a1.setLeft(e.getPageX() - a1._offsetX);
+ a1.setTop(e.getPageY() - a1._offsetY);
+ }
+ }
+
+ function handleMouseUp(e)
+ {
+ this.setCapture(false);
+ }
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Fields_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Fields_1.html
new file mode 100644
index 0000000000..fe002cc516
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Fields_1.html
@@ -0,0 +1,107 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Some tests for some of the most used properties of qx.ui.core.Widget (coordinates, dimensions, backgroundColor, opacity, ...).</p>
+ <p>Also here are the first test of some widgets which extend qx.ui.core.Widget: qx.ui.form.TextField and qx.ui.form.PasswordField. These extended
+ widgets also interacts like the basic QxWidgets with the qx.event.handler.FocusHandler.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ function textChange(e) {
+ this.debug("Text changed: " + e.getData());
+ }
+
+ var t1 = new qx.ui.form.TextField;
+ t1.setValue("textfield");
+ t1.setTop(48);
+ t1.setLeft(20);
+
+ t1.addEventListener("changeValue", textChange);
+ t1.addEventListener("input", function(e) {
+ this.debug("Input: " + e.getData());
+ });
+
+ d.add(t1);
+
+
+
+
+ var t2 = new qx.ui.form.PasswordField;
+ t2.setValue("passwordfield");
+ t2.setTop(80);
+ t2.setLeft(20);
+
+ t2.addEventListener("changeValue", textChange);
+
+ d.add(t2);
+
+
+ var t3 = new qx.ui.form.TextArea;
+ t3.setValue("textarea");
+ t3.setTop(110);
+ t3.setLeft(20);
+ t3.setWidth(300);
+ t3.setHeight(60);
+
+ t3.addEventListener("changeValue", textChange);
+
+ d.add(t3);
+
+
+ var t4 = new qx.ui.form.TextField;
+ t4.setValue("textfield");
+ t4.setTop(200);
+ t4.setLeft(20);
+ t4.setWidth(200);
+ t4.setMaxLength(100);
+ t4.setReadOnly(true);
+
+ t4.addEventListener("changeValue", textChange);
+
+ d.add(t4);
+
+
+ var t5 = new qx.ui.form.TextField;
+ t5.setValue("You are foo!");
+ t5.setTop(240);
+ t5.setLeft(20);
+
+ t5.addEventListener("changeValue", textChange);
+
+ d.add(t5);
+
+
+
+ var t6 = new qx.ui.form.TextField;
+ t6.setTop(270);
+ t6.setLeft(20);
+
+ t6.addEventListener("changeText", textChange);
+ t6.addEventListener("input", function(e) {
+ this.debug("Input: " + e.getData());
+ });
+
+ t6.addEventListener("keydown", function(e) {
+ this.debug("Keypress: " + e.getKeyIdentifier());
+ });
+
+ d.add(t6);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Flash_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Flash_1.html
new file mode 100644
index 0000000000..12cb67fcab
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Flash_1.html
@@ -0,0 +1,53 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Simple test for qx.ui.embed.Flash.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ // Try no version required
+ var fo1 = new qx.ui.embed.Flash("./image/flash/fo_tester.swf");
+
+ // Try version 7 required
+ // var fo1 = new qx.ui.embed.Flash("image/flash/fo_tester.swf", "7");
+
+ // Try version 9 required
+ // var fo1 = new qx.ui.embed.Flash("image/flash/fo_tester.swf", "9");
+
+ // Error handling methods:
+ // #1: Enable Express Install: Available in Flash Players >= 6.0.65
+ // fo1.setEnableExpressInstall(true);
+ // #2: Enable Redirect URL: Jump to an installer page
+ // fo1.setRedirectUrl("http://www.google.de");
+
+ fo1.setVariable("flashVarText", "this is passed in via FlashVars");
+ fo1.setScale("noscale");
+
+ fo1.setLeft(20);
+ fo1.setRight(335);
+ fo1.setTop(48);
+ fo1.setBottom(48);
+
+ fo1.setBorder(qx.renderer.border.BorderPresets.getInstance().inset);
+ fo1.setBackgroundColor("#FF6600");
+
+ d.add(fo1);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Fsm_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Fsm_1.html
new file mode 100644
index 0000000000..40de61ea86
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Fsm_1.html
@@ -0,0 +1,26 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>
+ Simple test of a finite state machine. This is a sufficiently simple
+ application that using a finite state machine really doesn't make sense,
+ but it is illustrative of how to use it. This FSM has two states.
+ </p>
+ </div>
+
+ <script type="text/javascript" src="Fsm_1/main.js"></script>
+ <script type="text/javascript" src="Fsm_1/fsm.js"></script>
+ <script type="text/javascript" src="Fsm_1/gui.js"></script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Fsm_1/fsm.js b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Fsm_1/fsm.js
new file mode 100644
index 0000000000..50cdc25ccb
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Fsm_1/fsm.js
@@ -0,0 +1,297 @@
+/*
+ * Initialize the finite state machine.
+ *
+ * This finite state machine has two states: Idle and AwaitRpcResult.
+ *
+ * In the Idle state, the Send button is enabled, the Abort button is
+ * disabled, and the three color bars are blue. In the AwaitRpcResult state,
+ * the Send button is disabled, the Abort button is enabled, and three color
+ * bars are red. All of these changes occur via automatic, table-driven
+ * function calls in autoActionsXXX() objects, not via explicit code. This
+ * demonstrates how groups of objects can all be manipulated together without
+ * having to write lots of code to do so. Just as these color blocks change
+ * color, numerous widgets could be disabled/hidden/etc., without writing code
+ * to futz with all of them.
+ */
+function initFsm()
+{
+ // Create a new finite state machine
+ var fsm = new qx.util.fsm.FiniteStateMachine("Fsm_1");
+
+ // For this simple example application, show all debug messages.
+ qx.Settings.setCustomOfClass(
+ "qx.util.fsm.FiniteStateMachine",
+ "debugFlags",
+ (qx.util.fsm.FiniteStateMachine.DebugFlags.EVENTS |
+ qx.util.fsm.FiniteStateMachine.DebugFlags.TRANSITIONS |
+ qx.util.fsm.FiniteStateMachine.DebugFlags.FUNCTION_DETAIL |
+ qx.util.fsm.FiniteStateMachine.DebugFlags.OBJECT_NOT_FOUND));
+
+ /*
+ * State: Idle
+ *
+ * Actions upon entry:
+ * button_send.setEnabled(true);
+ * button_abort.setEnabled(false);
+ * change background of objects in group "group_color_change" to blue
+ *
+ * Transition on:
+ * "execute" on button_send
+ */
+ var state = new qx.util.fsm.State(
+ "State_Idle",
+ {
+ "autoActionsBeforeOnentry" :
+ {
+ // The name of a function.
+ "setEnabled" :
+ [
+ {
+ // We want to enable the 'send' button
+ "parameters" : [ true ],
+
+ // Call this.getObject("button_send").setEnabled(true)
+ "objects" : [ "button_send" ]
+ },
+
+ {
+ // We want to disable the 'abort' button
+ "parameters" : [ false ],
+
+ // Call this.getObject("button_abort").setEnabled(false)
+ "objects" : [ "button_abort" ]
+ }
+ ],
+
+ // The name of a function.
+ "setBackgroundColor" :
+ [
+ {
+ // We want to change the atoms' background color to blue
+ "parameters" :
+ [
+ // We want the color oject created when needed, not "now"
+ // Providing a function as a parameter allows the value to be
+ // determined later.
+ function (fsm) { return new qx.renderer.color.Color("blue"); }
+ ],
+
+ // Call this.getObject(<object>).seBackgroundcolor("blue") on
+ // state entry, for each <object> in the group called
+ // "group_color_change".
+ "groups" : [ "group_color_change" ]
+ }
+ ]
+ },
+
+ "events" :
+ {
+ // If the send button is pressed, go to new state state where we
+ // will await the RPC result
+ "execute" :
+ {
+ "button_send" :
+ "Transition_Idle_to_AwaitRpcResult_via_button_send"
+ }
+ }
+ });
+ fsm.addState(state);
+
+ /*
+ * Transition: Idle to AwaitRpcResult
+ *
+ * Cause: "execute" on button_send
+ *
+ * Action:
+ * Issue RPC request with coalesced failure events
+ */
+ var trans = new qx.util.fsm.Transition(
+ "Transition_Idle_to_AwaitRpcResult_via_button_send",
+ {
+ "nextState" :
+ "State_AwaitRpcResult",
+
+ "ontransition" :
+ function(fsm, event)
+ {
+ var rpc = fsm.getObject("rpc");
+
+ rpc.setUrl(fsm.getObject("text_url").getValue());
+ rpc.setServiceName(fsm.getObject("text_service").getValue());
+
+ var request =
+ rpc.callAsyncListeners(true, // coalesce failure events
+ fsm.getObject("text_method").getValue(),
+ fsm.getObject("text_message").getValue());
+ fsm.addObject("request", request);
+ }
+ });
+ state.addTransition(trans);
+
+
+ /*
+ * State: AwaitRpcResult
+ *
+ * Actions upon entry:
+ * button_send.setEnabled(false);
+ * button_abort.setEnabled(true);
+ * change background of objects in group "group_color_change" to red
+ *
+ * Transition on:
+ * "completed" (on RPC)
+ * "failed" (on RPC)
+ * "execute on button_abort
+ */
+ var state = new qx.util.fsm.State(
+ "State_AwaitRpcResult",
+ {
+ "autoActionsBeforeOnentry" :
+ {
+ // The name of a function.
+ "setEnabled" :
+ [
+ {
+ // We want to disable the 'send' button
+ "parameters" : [ false ],
+
+ // Call this.getObject("send").setEnabled(false)
+ "objects" : [ "button_send" ]
+ },
+
+ {
+ // We want to enable the 'abort' button
+ "parameters" : [ true ],
+
+ // Call this.getObject("abort").setEnabled(true)
+ "objects" : [ "button_abort" ]
+ }
+ ],
+
+ // The name of a function.
+ "setBackgroundColor" :
+ [
+ {
+ // We want to change the atoms' background color to red
+ "parameters" :
+ [
+ // We want the color oject created when needed, not "now"
+ // Providing a function as a parameter allows the value to be
+ // determined later.
+ function (fsm) { return new qx.renderer.color.Color("red"); }
+ ],
+
+ // Call this.getObject(<object>).seBackgroundcolor("red"), for
+ // each <object> in the group called "group_color_change".
+ "groups" : [ "group_color_change" ]
+ }
+ ]
+ },
+
+ "events" :
+ {
+ "execute" :
+ {
+ "button_abort" :
+ "Transition_AwaitRpcResult_to_AwaitRpcResult_via_button_abort"
+ },
+
+ "completed" :
+ "Transition_AwaitRpcResult_to_Idle_via_complete",
+
+ "failed" :
+ "Transition_AwaitRpcResult_to_Idle_via_failed"
+ },
+
+ "onentry" :
+ function(fsm, state)
+ {
+ var message = fsm.getObject("text_result");
+ message.setValue("");
+ }
+
+ });
+ fsm.addState(state);
+
+ /*
+ * Transition: AwaitRpcResult to AwaitRpcResult
+ *
+ * Cause: "execute" on button_abort
+ */
+ var trans = new qx.util.fsm.Transition(
+ "Transition_AwaitRpcResult_to_AwaitRpcResult_via_button_abort",
+ {
+ "nextState" :
+ "State_AwaitRpcResult",
+
+ "ontransition" :
+ function(fsm, event)
+ {
+ // Get the request object
+ var request = fsm.getObject("request");
+
+ // Issue an abort for the pending request
+ request.abort();
+
+ var message = fsm.getObject("text_result");
+ message.setValue("Abort requested...");
+ }
+ });
+ state.addTransition(trans);
+
+ /*
+ * Transition: AwaitRpcResult to Idle
+ *
+ * Cause: "complete" (on RPC)
+ */
+ var trans = new qx.util.fsm.Transition(
+ "Transition_AwaitRpcResult_to_Idle_via_complete",
+ {
+ "nextState" :
+ "State_Idle",
+
+ "ontransition" :
+ function(fsm, event)
+ {
+ var message = fsm.getObject("text_result");
+ message.setValue("Got result: " + event.getData());
+
+ // The request has completed, so remove the object reference
+ fsm.removeObject("request");
+ }
+ });
+ state.addTransition(trans);
+
+ /*
+ * Transition: AwaitRpcResult to Idle
+ *
+ * Cause: "failed" (on RPC)
+ */
+ var trans = new qx.util.fsm.Transition(
+ "Transition_AwaitRpcResult_to_Idle_via_failed",
+ {
+ "nextState" :
+ "State_Idle",
+
+ "ontransition" :
+ function(fsm, event)
+ {
+ var message = fsm.getObject("text_result");
+ message.setValue("Got failure: " + event.getData());
+
+ // The request has completed, so remove the object reference
+ fsm.removeObject("request");
+ }
+ });
+ state.addTransition(trans);
+
+ // Allocate an RPC object
+ o = new qx.io.remote.Rpc();
+ o.setTimeout(10000);
+ o.addEventListener("completed", fsm.eventListener, fsm);
+ o.addEventListener("failed", fsm.eventListener, fsm);
+ o.addEventListener("timeout", fsm.eventListener, fsm);
+ o.addEventListener("aborted", fsm.eventListener, fsm);
+ fsm.addObject("rpc", o);
+
+ return fsm;
+}
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Fsm_1/gui.js b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Fsm_1/gui.js
new file mode 100644
index 0000000000..0ba443a629
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Fsm_1/gui.js
@@ -0,0 +1,95 @@
+function initGui(fsm)
+{
+ var o;
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var vLayout = new qx.ui.layout.VerticalBoxLayout();
+ vLayout.setTop(40);
+ vLayout.setLeft(20);
+ vLayout.setSpacing(4);
+
+ vLayout.add(new qx.ui.basic.Label("URL:"));
+ var defaultURL = qx.io.remote.Rpc.makeServerURL();
+ if (defaultURL == null)
+ {
+ defaultURL = "/services/";
+ }
+ o = new qx.ui.form.TextField(defaultURL);
+ vLayout.add(o);
+ fsm.addObject("text_url", o);
+
+ vLayout.add(new qx.ui.basic.Label("Service:"));
+ o = new qx.ui.form.TextField("qooxdoo.test");
+ vLayout.add(o);
+ fsm.addObject("text_service", o);
+
+ vLayout.add(new qx.ui.basic.Label("Method:"));
+ o = new qx.ui.form.TextField("sleep");
+ vLayout.add(o);
+ fsm.addObject("text_method", o);
+
+ var hLayout = new qx.ui.layout.HorizontalBoxLayout();
+ hLayout.setHeight("auto");
+ hLayout.setVerticalChildrenAlign("middle");
+ hLayout.setSpacing(4);
+
+ o = new qx.ui.form.TextField("2");
+ o.setWidth(200);
+ hLayout.add(o);
+ fsm.addObject("text_message", o);
+
+ o = new qx.ui.form.Button("Send to server");
+ o.addEventListener("execute", fsm.eventListener, fsm);
+ hLayout.add(o);
+ fsm.addObject("button_send", o);
+
+ o = new qx.ui.form.Button("Abort");
+ o.setEnabled(false);
+ o.addEventListener("execute", fsm.eventListener, fsm);
+ hLayout.add(o);
+ fsm.addObject("button_abort", o);
+
+ vLayout.add(hLayout);
+
+ vLayout.add(new qx.ui.basic.Label("Result:"));
+ o = new qx.ui.form.TextField("");
+ o.setWidth(600);
+ vLayout.add(o);
+ fsm.addObject("text_result", o);
+
+ var hLayout = new qx.ui.layout.HorizontalBoxLayout();
+ hLayout.setHeight("auto");
+ hLayout.setVerticalChildrenAlign("middle");
+ hLayout.setSpacing(4);
+
+ var o = new qx.ui.basic.Atom("Idle=blue, RPC=red");
+ o.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ o.setColor(new qx.renderer.color.Color("white"));
+ o.setWidth(200);
+ o.setHeight(30);
+ o.setPadding(4);
+ hLayout.add(o);
+ fsm.addObject("atom_1", o, "group_color_change");
+
+ var o = new qx.ui.basic.Atom("Idle=blue, RPC=red");
+ o.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ o.setColor(new qx.renderer.color.Color("white"));
+ o.setWidth(200);
+ o.setHeight(30);
+ o.setPadding(4);
+ hLayout.add(o);
+ fsm.addObject("atom_2", o, "group_color_change");
+
+ var o = new qx.ui.basic.Atom("Idle=blue, RPC=red");
+ o.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ o.setColor(new qx.renderer.color.Color("white"));
+ o.setWidth(200);
+ o.setHeight(30);
+ o.setPadding(4);
+ hLayout.add(o);
+ fsm.addObject("atom_3", o, "group_color_change");
+
+ vLayout.add(hLayout);
+
+ d.add(vLayout);
+}
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Fsm_1/main.js b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Fsm_1/main.js
new file mode 100644
index 0000000000..56a53ac484
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Fsm_1/main.js
@@ -0,0 +1,11 @@
+qx.core.Init.getInstance().defineMain(function()
+{
+ // Initialize the finite state machine
+ fsm = initFsm();
+
+ // Initialize the GUI
+ initGui(fsm);
+
+ // Start the finite state machine
+ fsm.start();
+});
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/GalleryList_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/GalleryList_1.html
new file mode 100644
index 0000000000..1122ffb702
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/GalleryList_1.html
@@ -0,0 +1,129 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+
+ <style type="text/css">
+.qx_ui_embed_GalleryList{
+ position: absolute;
+ visibility: visible;
+}
+
+.qx_ui_embed_GalleryList .galleryFrame{
+ padding: 2px;
+}
+
+.qx_ui_embed_GalleryList .galleryCell{
+ margin: 2px;
+ padding-bottom: 2px;
+ border: 1px solid #EEE;
+
+ background: #fff;
+ overflow: hidden;
+ white-space: normal;
+
+ font-family: Tahoma, Verdana, sans-serif;
+ font-size: 12px;
+
+ cursor: default;
+
+ -moz-user-select: none;
+ user-select: none;
+
+ position: relative;
+}
+
+.qx_ui_embed_GalleryList .galleryCell img{
+ vertical-align: bottom;
+ display: block;
+}
+
+.qx_ui_embed_GalleryList .galleryNumber{
+ width: 45px;
+ padding: 4px;
+
+ position: absolute;
+ top: 0px;
+ left: 0px;
+}
+
+.qx_ui_embed_GalleryList .galleryImageContainer{
+ position: absolute;
+ top: 0px;
+ left: 50px;
+}
+
+.qx_ui_embed_GalleryList .galleryText{
+ padding: 4px;
+ position: absolute;
+ top: 0px;
+ left: 130px;
+}
+
+.qx_ui_embed_GalleryList .galleryNumber,
+.qx_ui_embed_GalleryList .galleryText h3{
+ font-weight: bold;
+ font-size: 11px;
+}
+
+.qx_ui_embed_GalleryList .galleryText p{
+ font-size: 10px;
+}
+
+.qx_ui_embed_GalleryList .galleryCell-Selected{
+ background: #9BBCFF;
+ border-color: #3B7CFF;
+}
+ </style>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>ListSort implementation</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var imgPath = qx.manager.object.AliasManager.getInstance().resolvePath("icon/48/apps/graphics-snapshot.png");
+
+ var galleryData = [];
+
+ for (var i=0; i<100; i++)
+ {
+ galleryData.push({
+ display : "bmzN9ci5",
+ width : 350,
+ height : 350,
+ thumbWidth : 48,
+ thumbHeight : 48,
+ title : "gohome.png",
+ timestamp : Math.random().toString(),
+ comment : "Cool Comment sadas asd dsa asdas dasd asd asdas dasdasdasd sadasdas dsds as",
+ id : "7686191121780974-10682",
+ src : imgPath,
+ number : "#" + i
+ });
+ };
+
+ var galleryList = new qx.ui.embed.GalleryList(galleryData);
+
+ galleryList.setWidth(400);
+ galleryList.setTop(48);
+ galleryList.setBottom(48);
+ galleryList.setLeft(250);
+
+ galleryList.setBorder(qx.renderer.border.BorderPresets.getInstance().inset);
+ galleryList.setBackgroundColor("white");
+
+ qx.ui.core.ClientDocument.getInstance().add(galleryList);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Gallery_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Gallery_1.html
new file mode 100644
index 0000000000..a7965f0f13
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Gallery_1.html
@@ -0,0 +1,116 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+
+ <style type="text/css">
+.qx_ui_embed_Gallery .galleryFrame{
+ padding: 2px;
+}
+
+.qx_ui_embed_Gallery .galleryCell{
+ border: 1px solid #444;
+ background: #fff;
+ margin: 2px;
+ float: left;
+ overflow: hidden;
+
+ font-family: Tahoma, Verdana, sans-serif;
+ font-size: 10px;
+
+ cursor: default;
+
+ -moz-user-select: none;
+ user-select: none;
+}
+
+.qx_ui_embed_Gallery .galleryCell img{
+ vertical-align: bottom;
+ display: block;
+}
+
+.qx_ui_embed_Gallery .galleryCell .galleryTitle,
+.qx_ui_embed_Gallery .galleryCell .galleryComment{
+ background: #eee;
+ padding: 3px 6px;
+ text-align: center;
+ cursor: default;
+ overflow: hidden;
+ white-space: nowrap;
+}
+
+.qx_ui_embed_Gallery .galleryCell .galleryTitle{
+ border-bottom: 1px solid #aaa;
+}
+
+.qx_ui_embed_Gallery .galleryCell .galleryComment{
+ border-top: 1px solid #aaa;
+}
+
+.qx_ui_embed_Gallery .galleryCell-Selected{
+ background: #DCE8F6;
+ border: 1px solid #2760A1;
+}
+
+.qx_ui_embed_Gallery .galleryCell-Selected .galleryTitle,
+.qx_ui_embed_Gallery .galleryCell-Selected .galleryComment{
+ background: #9BBFE7;
+}
+
+.qx_ui_embed_Gallery .galleryCell-Selected .galleryTitle{
+ border-bottom: 1px dotted #2760A1;
+}
+
+.qx_ui_embed_Gallery .galleryCell-Selected .galleryComment{
+ border-top: 1px dotted #2760A1;
+}
+ </style>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Test file for qx.ui.embed.Gallery</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var imgPath = qx.manager.object.AliasManager.getInstance().resolvePath("icon/64/apps/office-organizer.png");
+
+ var galleryList = [];
+
+ for (var i=0; i<100; i++)
+ {
+ galleryList.push({
+ display : "bmzN9ci5",
+ width : 350,
+ height : 350,
+ thumbWidth : 64,
+ thumbHeight : 64,
+ title : "gohome.png",
+ timestamp : Math.random().toString(),
+ comment : "Cool Comment",
+ id : "7686191121780974-10682",
+ src : imgPath
+ });
+ };
+
+ var gallery = new qx.ui.embed.Gallery(galleryList);
+
+ gallery.setLeft(20);
+ gallery.setRight(335);
+ gallery.setTop(48);
+ gallery.setBottom(48);
+ gallery.setBorder(qx.renderer.border.BorderPresets.getInstance().inset);
+
+ qx.ui.core.ClientDocument.getInstance().add(gallery);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/GroupBox_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/GroupBox_1.html
new file mode 100644
index 0000000000..079291d36a
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/GroupBox_1.html
@@ -0,0 +1,107 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Introducing qx.ui.groupbox.GroupBox.</p>
+ </div>
+
+ <fieldset style="position:absolute; top:48px; left:400px; width:200px; height:100px"><legend>builtin</legend>content content content content content content content content content content content content content content content</fieldset>
+
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var fs = new qx.ui.groupbox.GroupBox("My first Fieldset");
+
+ with(fs)
+ {
+ setWidth("40%");
+ setBottom(48);
+ setTop(48);
+ setLeft(20);
+
+ setMaxWidth(350);
+ setMinWidth(250);
+ };
+
+
+
+ var a1 = new qx.ui.basic.Atom("TextField 1");
+ with(a1)
+ {
+ setTop(3);
+ setLeft(0);
+ setWidth("35%");
+ setHorizontalChildrenAlign("left");
+ };
+
+ var i1 = new qx.ui.form.TextField();
+ with(i1)
+ {
+ setTop(0);
+ setRight(0);
+ setWidth("60%");
+ };
+ fs.add(a1, i1);
+
+
+
+ var a2 = new qx.ui.basic.Atom("TextField 2", "icon/16/apps/preferences-desktop-wallpaper.png");
+ with(a2)
+ {
+ setTop(33);
+ setLeft(0);
+ setWidth("35%");
+ setHorizontalChildrenAlign("left");
+ };
+ fs.add(a2);
+
+ var i2 = new qx.ui.form.TextField();
+ with(i2)
+ {
+ setTop(30);
+ setRight(0);
+ setWidth("60%");
+ };
+ fs.add(i2);
+
+
+
+ var a3 = new qx.ui.basic.Atom("TextField 3");
+ with(a3)
+ {
+ setTop(63);
+ setLeft(0);
+ setWidth("35%");
+ setHorizontalChildrenAlign("left");
+ };
+ fs.add(a3);
+
+ var i3 = new qx.ui.form.TextField();
+ with(i3)
+ {
+ setTop(60);
+ setRight(0);
+ setWidth("60%");
+ };
+ fs.add(i3);
+
+
+
+ d.add(fs);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/GroupBox_2.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/GroupBox_2.html
new file mode 100644
index 0000000000..06456bd71d
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/GroupBox_2.html
@@ -0,0 +1,153 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Test for qx.ui.groupbox.CheckGroupBox</p>
+ </div>
+
+ <fieldset style="position:absolute; top:48px; left:400px; width:200px; height:100px"><legend>builtin</legend>content content content content content content content content content content content content content content content</fieldset>
+
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var fs = new qx.ui.groupbox.CheckGroupBox("CheckBox FieldSet");
+
+ with(fs)
+ {
+ setWidth("40%");
+ setBottom(48);
+ setTop(48);
+ setLeft(20);
+
+ setMaxWidth(350);
+ setMinWidth("auto");
+ };
+
+ d.add(fs);
+
+
+
+
+ var fsl = new qx.ui.layout.VerticalBoxLayout;
+ fsl.setLeft(0);
+ fsl.setRight(0);
+ fsl.setHeight("auto");
+ fsl.setSpacing(4);
+ fs.add(fsl);
+
+
+
+
+ var r1 = new qx.ui.layout.HorizontalBoxLayout;
+ r1.setLeft(0);
+ r1.setWidth("100%");
+ r1.setHeight("auto");
+ r1.setVerticalChildrenAlign("middle");
+ fsl.add(r1);
+
+ var a1 = new qx.ui.basic.Atom("TextField 1");
+ with(a1)
+ {
+ setLeft(0);
+ setWidth("40%");
+ setHorizontalChildrenAlign("left");
+ };
+
+ var i1 = new qx.ui.form.TextField;
+ with(i1)
+ {
+ setRight(0);
+ setWidth("60%");
+ };
+
+ r1.add(a1, i1);
+
+
+
+
+
+ var r2 = new qx.ui.layout.HorizontalBoxLayout;
+ r2.setLeft(0);
+ r2.setWidth("100%");
+ r2.setHeight("auto");
+ r2.setVerticalChildrenAlign("middle");
+ fsl.add(r2);
+
+ var a2 = new qx.ui.basic.Atom("TextField 2", "icon/16/apps/preferences-desktop-wallpaper.png");
+ with(a2)
+ {
+ setLeft(0);
+ setWidth("40%");
+ setHorizontalChildrenAlign("left");
+ };
+
+ var i2 = new qx.ui.form.TextField;
+ with(i2)
+ {
+ setRight(0);
+ setWidth("60%");
+ };
+
+ r2.add(a2, i2);
+
+
+
+
+
+
+ var r3 = new qx.ui.layout.HorizontalBoxLayout;
+ r3.setLeft(0);
+ r3.setWidth("100%");
+ r3.setHeight("auto");
+ r3.setVerticalChildrenAlign("middle");
+ fsl.add(r3);
+
+ var a3 = new qx.ui.basic.Atom("TextField 3");
+ with(a3)
+ {
+ setLeft(0);
+ setWidth("40%");
+ setHorizontalChildrenAlign("left");
+ };
+
+ var i3 = new qx.ui.form.TextField;
+ with(i3)
+ {
+ setRight(0);
+ setWidth("60%");
+ };
+
+ r3.add(a3, i3);
+
+
+
+
+
+ fs.getLegendObject().addEventListener("changeChecked", function(e) {
+ i1.setEnabled(e.getData());
+ i2.setEnabled(e.getData());
+ i3.setEnabled(e.getData());
+
+ a1.setEnabled(e.getData());
+ a2.setEnabled(e.getData());
+ a3.setEnabled(e.getData());
+ });
+
+
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/GroupBox_3.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/GroupBox_3.html
new file mode 100644
index 0000000000..72ce8f7a87
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/GroupBox_3.html
@@ -0,0 +1,160 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Test for qx.ui.groupbox.RadioGroupBox</p>
+ </div>
+
+ <fieldset style="position:absolute; top:48px; left:400px; width:200px; height:100px"><legend>builtin</legend>content content content content content content content content content content content content content content content</fieldset>
+
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var fsr = new qx.ui.form.RadioButton("Simple configuration");
+
+ fsr.setLocation(27, 48);
+ d.add(fsr);
+
+ var fs = new qx.ui.groupbox.RadioGroupBox("RadioButton FieldSet");
+
+ with(fs)
+ {
+ setWidth("40%");
+ setBottom(48);
+ setTop(72);
+ setLeft(20);
+
+ setMaxWidth(350);
+ setMinWidth("auto");
+ };
+
+ d.add(fs);
+
+ var fag = new qx.manager.selection.RadioManager("fscontrol", [ fsr, fs.getLegendObject() ]);
+
+
+
+
+ var fsl = new qx.ui.layout.VerticalBoxLayout;
+ fsl.setLeft(0);
+ fsl.setRight(0);
+ fsl.setHeight("auto");
+ fsl.setSpacing(4);
+ fs.add(fsl);
+
+
+
+
+ var r1 = new qx.ui.layout.HorizontalBoxLayout;
+ r1.setLeft(0);
+ r1.setWidth("100%");
+ r1.setHeight("auto");
+ r1.setVerticalChildrenAlign("middle");
+ fsl.add(r1);
+
+ var a1 = new qx.ui.basic.Atom("TextField 1");
+ with(a1)
+ {
+ setLeft(0);
+ setWidth("40%");
+ setHorizontalChildrenAlign("left");
+ };
+
+ var i1 = new qx.ui.form.TextField;
+ with(i1)
+ {
+ setRight(0);
+ setWidth("60%");
+ };
+
+ r1.add(a1, i1);
+
+
+
+
+
+ var r2 = new qx.ui.layout.HorizontalBoxLayout;
+ r2.setLeft(0);
+ r2.setWidth("100%");
+ r2.setHeight("auto");
+ r2.setVerticalChildrenAlign("middle");
+ fsl.add(r2);
+
+ var a2 = new qx.ui.basic.Atom("TextField 2", "icon/16/apps/preferences-desktop-wallpaper.png");
+ with(a2)
+ {
+ setLeft(0);
+ setWidth("40%");
+ setHorizontalChildrenAlign("left");
+ };
+
+ var i2 = new qx.ui.form.TextField;
+ with(i2)
+ {
+ setRight(0);
+ setWidth("60%");
+ };
+
+ r2.add(a2, i2);
+
+
+
+
+
+
+ var r3 = new qx.ui.layout.HorizontalBoxLayout;
+ r3.setLeft(0);
+ r3.setWidth("100%");
+ r3.setHeight("auto");
+ r3.setVerticalChildrenAlign("middle");
+ fsl.add(r3);
+
+ var a3 = new qx.ui.basic.Atom("TextField 3");
+ with(a3)
+ {
+ setLeft(0);
+ setWidth("40%");
+ setHorizontalChildrenAlign("left");
+ };
+
+ var i3 = new qx.ui.form.TextField;
+ with(i3)
+ {
+ setRight(0);
+ setWidth("60%");
+ };
+
+ r3.add(a3, i3);
+
+
+
+
+
+ fs.getLegendObject().addEventListener("changeChecked", function(e) {
+ i1.setEnabled(e.getData());
+ i2.setEnabled(e.getData());
+ i3.setEnabled(e.getData());
+
+ a1.setEnabled(e.getData());
+ a2.setEnabled(e.getData());
+ a3.setEnabled(e.getData());
+ });
+
+
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Iframe_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Iframe_1.html
new file mode 100644
index 0000000000..8d7adf7990
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Iframe_1.html
@@ -0,0 +1,71 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Iframe implementation. Elastic.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ //----------
+ // qx.ui.embed.Iframe
+ //----------
+
+ w1 = new qx.ui.embed.Iframe();
+
+ w1.addEventListener("load", function(e) {
+ this.debug("Loaded: " + this.getSource());
+ });
+
+ // elastic
+ w1.set( { left: 20, top: 96, right: 335, bottom: 48 } );
+ w1.setSource("http://www.google.com");
+
+ d.add(w1);
+
+
+ function changeURL(e) {
+
+ this.setSource(e.getData());
+ };
+
+ // make qx.ui.embed.Iframe react to event "surfTo" via function changeURL()
+ d.addEventListener("surfTo", changeURL, w1);
+
+
+ //-------------
+ // radio group
+ //-------------
+
+ var rd1 = new qx.ui.form.RadioButton("Google", "http://www.google.com");
+ var rd2 = new qx.ui.form.RadioButton("Yahoo", "http://www.yahoo.com");
+
+ rd1.set( { left: 20, top: 48, checked: true } );
+ rd2.set( { left: 120, top: 48 } );
+
+ var rbm = new qx.manager.selection.RadioManager( name, [rd1, rd2]);
+
+ // elements of radio group fire event "surfTo"
+ rbm.addEventListener("changeSelected", function(e)
+ {
+ d.dispatchEvent( new qx.event.type.DataEvent("surfTo", e.getData().getValue() ) );
+ });
+
+ d.add(rd1, rd2);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Inline_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Inline_1.html
new file mode 100644
index 0000000000..c1cfee4e8d
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Inline_1.html
@@ -0,0 +1,260 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Inline widget.</p><p>Application layout is disabled by using qx.core.Settings. Scrollbars appear, if the content is bigger than the window.</p>
+ </div>
+
+ <div id="iframe1" class="manualFrame" style="overflow:hidden;position:static;margin-top:38px;margin-left:10px">
+ Inline Frame #1
+ </div>
+
+ <div id="iframe2" class="manualFrame" style="overflow:hidden;position:static;margin-top:20px;margin-left:10px">
+ Inline Frame #2
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var inlineWidget = new qx.ui.basic.Inline("iframe1");
+
+ inlineWidget.setHeight("auto");
+ inlineWidget.setWidth("auto");
+
+ var fieldSet = new qx.ui.groupbox.GroupBox("My first inline fieldset");
+
+ with(fieldSet)
+ {
+ // setWidth("auto");
+ // setWidth("100%");
+
+ setLeft(0);
+ setRight(0);
+
+ setHeight("auto");
+ };
+
+ inlineWidget.add(fieldSet);
+
+ d.add(inlineWidget);
+
+
+
+ var atom1 = new qx.ui.basic.Atom("Name");
+ var textfield1 = new qx.ui.form.TextField;
+
+ with(atom1)
+ {
+ setLeft(0);
+ setTop(3);
+ };
+
+ with(textfield1)
+ {
+ setLeft(80);
+ setRight(0);
+ setTop(0);
+ };
+
+ fieldSet.add(atom1, textfield1);
+
+
+
+ var atom2 = new qx.ui.basic.Atom("First Name");
+ var textfield2 = new qx.ui.form.TextField;
+
+ with(atom2)
+ {
+ setLeft(0);
+ setTop(33);
+ };
+
+ with(textfield2)
+ {
+ setLeft(80);
+ setRight(0);
+ setTop(30);
+ };
+
+ fieldSet.add(atom2, textfield2);
+
+
+
+ var atom3 = new qx.ui.basic.Atom("City");
+ var textfield3 = new qx.ui.form.TextField;
+
+ with(atom3)
+ {
+ setLeft(0);
+ setTop(63);
+ };
+
+ with(textfield3)
+ {
+ setLeft(80);
+ setRight(0);
+ setTop(60);
+ };
+
+ fieldSet.add(atom3, textfield3);
+
+
+
+ /*
+ Menu
+ */
+
+ var m1 = new qx.ui.menu.Menu;
+
+ var mb1_01 = new qx.ui.menu.Button("New");
+ var mb1_02 = new qx.ui.menu.Button("Open");
+ var mb1_03 = new qx.ui.menu.Button("Save");
+ var mb1_04 = new qx.ui.menu.Button("Save as");
+ var mb1_05 = new qx.ui.menu.Button("Close");
+ var mb1_06 = new qx.ui.menu.Button("Restore last saved");
+
+ m1.add(mb1_01, mb1_02, mb1_03, mb1_04, mb1_05, mb1_06);
+
+
+ var m2 = new qx.ui.menu.Menu;
+
+ var mb2_01 = new qx.ui.menu.Button("Undo");
+ var mb2_02 = new qx.ui.menu.Button("Redo");
+ var mb2_b1 = new qx.ui.menu.Separator();
+ var mb2_03 = new qx.ui.menu.Button("Cut", "icon/16/actions/edit-cut.png");
+ var mb2_04 = new qx.ui.menu.Button("Copy", "icon/16/actions/edit-copy.png");
+ var mb2_05 = new qx.ui.menu.Button("Paste", "icon/16/actions/edit-paste.png");
+ var mb2_06 = new qx.ui.menu.Button("Delete", "icon/16/actions/edit-delete.png");
+ var mb2_b2 = new qx.ui.menu.Separator();
+ var mb2_07 = new qx.ui.menu.Button("Select All");
+ var mb2_08 = new qx.ui.menu.Button("Find");
+ var mb2_09 = new qx.ui.menu.Button("Find Again");
+
+
+
+
+ mb2_05.setEnabled(false);
+ mb2_06.setEnabled(false);
+ mb2_09.setEnabled(false);
+
+ m2.add(mb2_01, mb2_02, mb2_b1, mb2_03, mb2_04, mb2_05, mb2_06, mb2_b2, mb2_07, mb2_08, mb2_09);
+
+
+ var m3 = new qx.ui.menu.Menu;
+ var m3_suba = new qx.ui.menu.Menu;
+ var m3_subb = new qx.ui.menu.Menu;
+ var m3_subc = new qx.ui.menu.Menu;
+
+ var mb3_01 = new qx.ui.menu.CheckBox("File List", null, false);
+ var mb3_02 = new qx.ui.menu.CheckBox("Syntax Highlighting", null, true);
+ var mb3_03 = new qx.ui.menu.CheckBox("Statusbar", null, true);
+ var mb3_b1 = new qx.ui.menu.Separator();
+ var mb3_04 = new qx.ui.menu.Button("Printer Font", null, null, m3_suba);
+ var mb3_05 = new qx.ui.menu.Button("Editor Font", null, null, m3_subb);
+ var mb3_06 = new qx.ui.menu.Button("Export Font", null, null, m3_subc);
+
+ m3.add(mb3_01, mb3_02, mb3_03, mb3_b1, mb3_04, mb3_05, mb3_06);
+
+ var mb3_suba_01 = new qx.ui.menu.Button("Tahoma, 11pt");
+ var mb3_suba_02 = new qx.ui.menu.Button("Tahoma, 12pt");
+ var mb3_suba_03 = new qx.ui.menu.Button("Tahoma, 13pt");
+ var mb3_suba_04 = new qx.ui.menu.Button("Tahoma, 14pt");
+ var mb3_suba_05 = new qx.ui.menu.Button("Tahoma, 15pt");
+
+ m3_suba.add(mb3_suba_01, mb3_suba_02, mb3_suba_03, mb3_suba_04, mb3_suba_05);
+
+ var mb3_subb_01 = new qx.ui.menu.Button("Verdana, 11pt");
+ var mb3_subb_02 = new qx.ui.menu.Button("Verdana, 12pt");
+ var mb3_subb_03 = new qx.ui.menu.Button("Verdana, 13pt");
+ var mb3_subb_04 = new qx.ui.menu.Button("Verdana, 14pt");
+ var mb3_subb_05 = new qx.ui.menu.Button("Verdana, 15pt");
+
+ m3_subb.add(mb3_subb_01, mb3_subb_02, mb3_subb_03, mb3_subb_04, mb3_subb_05);
+
+ var mb3_subc_01 = new qx.ui.menu.Button("Courier, 11pt");
+ var mb3_subc_02 = new qx.ui.menu.Button("Courier, 12pt");
+ var mb3_subc_03 = new qx.ui.menu.Button("Courier, 13pt");
+ var mb3_subc_04 = new qx.ui.menu.Button("Courier, 14pt");
+ var mb3_subc_05 = new qx.ui.menu.Button("Courier, 15pt");
+
+ m3_subc.add(mb3_subc_01, mb3_subc_02, mb3_subc_03, mb3_subc_04, mb3_subc_05);
+
+
+
+ var m4 = new qx.ui.menu.Menu;
+
+ var m4_suba = new qx.ui.menu.Menu;
+
+ var mb4_01 = new qx.ui.menu.Button("View", null, null, m4_suba);
+ var mb4_b1 = new qx.ui.menu.Separator();
+ var mb4_02 = new qx.ui.menu.Button("Editor Preferences...");
+ var mb4_03 = new qx.ui.menu.Button("Editor Extensions");
+ var mb4_04 = new qx.ui.menu.Button("Framework Preferences");
+
+ m4.add(mb4_01, mb4_b1, mb4_02, mb4_03, mb4_04);
+
+ var mb4_suba_01 = new qx.ui.menu.Button("New Window");
+ var mb4_suba_b1 = new qx.ui.menu.Separator();
+ var mb4_suba_02 = new qx.ui.menu.RadioButton("Overlapping", null, true);
+ var mb4_suba_03 = new qx.ui.menu.RadioButton("Split Horizontally", null);
+ var mb4_suba_04 = new qx.ui.menu.RadioButton("Split Vertically", null);
+ var mb4_suba_b2 = new qx.ui.menu.Separator();
+ var mb4_suba_05 = new qx.ui.menu.Button("Next Window");
+ var mb4_suba_06 = new qx.ui.menu.Button("Previous Window");
+
+ m4_suba.add(mb4_suba_01, mb4_suba_b1, mb4_suba_02, mb4_suba_03, mb4_suba_04, mb4_suba_b2, mb4_suba_05, mb4_suba_06);
+
+ var mb4_manager = new qx.manager.selection.RadioManager("windowMode", [ mb4_suba_02, mb4_suba_03, mb4_suba_04 ]);
+
+
+ var m5 = new qx.ui.menu.Menu;
+
+ var mb5_01 = new qx.ui.menu.Button("Help");
+ var mb5_02 = new qx.ui.menu.Button("About");
+
+ m5.add(mb5_01, mb5_02);
+
+ d.add(m1, m2, m3, m3_suba, m3_subb, m3_subc, m4, m4_suba, m5);
+
+
+ var inline2 = new qx.ui.basic.Inline("iframe2");
+
+ inline2.setHeight("auto");
+ inline2.setWidth("auto");
+
+
+ var mb1 = new qx.ui.toolbar.ToolBar;
+
+ var mbb1 = new qx.ui.toolbar.MenuButton("File", m1);
+ var mbb2 = new qx.ui.toolbar.MenuButton("Edit", m2);
+ var mbb3 = new qx.ui.toolbar.MenuButton("View", m3);
+ var mbb4 = new qx.ui.toolbar.MenuButton("Options", m4);
+ var mbb5 = new qx.ui.toolbar.MenuButton("Help", m5);
+
+ mb1.add(mbb1, mbb2, mbb3, mbb4, mbb5);
+
+ with(mb1)
+ {
+ setWidth(400);
+ setHeight("auto");
+ };
+
+ inline2.add(mb1);
+
+ d.add(inline2);
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ListView_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ListView_1.html
new file mode 100644
index 0000000000..24e845ab97
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ListView_1.html
@@ -0,0 +1,67 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Testing qx.ui.listview.ListView with text cells.</p>
+ <p>Testing of column alignment, resizeable prohibition for columns and live resizing.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var ld = [];
+ var lt = [ "Image", "Text", "PDF", "Illustration", "Document" ];
+
+ for (var i=0, t; i<1000; i++)
+ {
+ t=Math.round(Math.random()*4);
+ ld.push({ name : { text : "File " + i }, size : { text : Math.round(Math.random()*100) + "kb" }, type : { text : lt[t] }, modified : { text : "Nov " + Math.round(Math.random() * 30 + 1) + " 2005" }, rights: { text : "-rw-r--r--" }});
+ };
+
+ var lc =
+ {
+ name : { label : "Name", width : 100, type : "text" },
+ size: { label : "Size", width : 50, type : "text", align : "right", resizable : false },
+ type : { label : "Type", width : 80, type : "text" },
+ modified : { label : "Last Modified", width : 150, type : "text" },
+ rights : { label : "Rights", width: 80, type : "text" }
+ };
+
+ var lv = new qx.ui.listview.ListView(ld, lc);
+
+ lv.setBorder(qx.renderer.border.BorderPresets.getInstance().shadow);
+ lv.setBackgroundColor("white");
+ lv.setWidth(600);
+ lv.setHeight(350);
+ lv.setLocation(20, 48);
+
+ // Prohibit resizing of columns completly
+ // lv.setResizable(false);
+
+ qx.ui.core.ClientDocument.getInstance().add(lv);
+
+
+
+
+ var chk1 = new qx.ui.form.CheckBox("Enable Live Resize");
+ chk1.setLocation(20, 420);
+ qx.ui.core.ClientDocument.getInstance().add(chk1);
+
+ chk1.addEventListener("changeChecked", function(e) {
+ lv.setLiveResize(e.getData());
+ });
+
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ListView_2.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ListView_2.html
new file mode 100644
index 0000000000..eff805d2c0
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ListView_2.html
@@ -0,0 +1,53 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Testing qx.ui.listview.ListView with text cells and an additional icon.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var ld = [];
+ var lt = [ "Image", "Text", "PDF", "Illustration", "Document" ];
+ var li = [ "apps/preferences-desktop-theme.png", "actions/edit.png", "apps/graphics-image-viewer.png", "apps/preferences-desktop-wallpaper.png", "actions/document-new.png" ];
+
+ for (var i=0, t; i<1000; i++)
+ {
+ t=Math.round(Math.random()*4);
+ ld.push({ icon : { source : "icon/16/" + li[t] }, name : { text : "File " + i }, size : { text : Math.round(Math.random()*100) + "kb" }, type : { text : lt[t] }, modified : { text : "Nov " + Math.round(Math.random() * 30 + 1) + " 2005" }, rights: { text : "-rw-r--r--" }});
+ };
+
+ var lc =
+ {
+ icon : { label : "", width: 24, type : "image" },
+ name : { label : "Name", width : 100, type : "text" },
+ size: { label : "Size", width : 50, type : "text", align : "right" },
+ type : { label : "Type", width : 80, type : "text" },
+ modified : { label : "Last Modified", width : 150, type : "text" },
+ rights : { label : "Rights", width: 80, type : "text" }
+ };
+
+ var lv = new qx.ui.listview.ListView(ld, lc);
+
+ lv.setBorder(qx.renderer.border.BorderPresets.getInstance().shadow);
+ lv.setBackgroundColor("white");
+ lv.setWidth(600);
+ lv.setHeight(350);
+ lv.setLocation(20, 48);
+
+ qx.ui.core.ClientDocument.getInstance().add(lv);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ListView_3.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ListView_3.html
new file mode 100644
index 0000000000..d726c26d63
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ListView_3.html
@@ -0,0 +1,51 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Testing qx.ui.listview.ListView with iconHtml cells.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var ld = [];
+ var lt = [ "Image", "Text", "PDF", "Illustration", "Document" ];
+
+ for (var i=0, t; i<1000; i++)
+ {
+ t=Math.round(Math.random()*4);
+ ld.push({ name : { html : "E-Mail " + i, icon : "icon/16/apps/internet-email-client.png", iconWidth : 16, iconHeight : 16 }, size : { text : Math.round(Math.random()*100) + "kb" }, type : { text : lt[t] }, modified : { text : "Nov " + Math.round(Math.random() * 30 + 1) + " 2005" }, rights: { text : "-rw-r--r--" }, open : { uri : "http://www.google.com/search?q=" + i, html : "Open " + i }});
+ };
+
+ var lc =
+ {
+ name : { label : "Name", width : 120, type : "iconHtml" },
+ size: { label : "Size", width : 50, type : "text", align : "right" },
+ type : { label : "Type", width : 80, type : "text" },
+ modified : { label : "Last Modified", width : 150, type : "text" },
+ rights : { label : "Rights", width: 80, type : "text" }
+ };
+
+ var lv = new qx.ui.listview.ListView(ld, lc);
+
+ lv.setBorder(qx.renderer.border.BorderPresets.getInstance().shadow);
+ lv.setBackgroundColor("white");
+ lv.setWidth(600);
+ lv.setHeight(350);
+ lv.setLocation(20, 48);
+
+ qx.ui.core.ClientDocument.getInstance().add(lv);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ListView_4.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ListView_4.html
new file mode 100644
index 0000000000..6072187c89
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ListView_4.html
@@ -0,0 +1,58 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Testing qx.ui.listview.ListView with text cells.</p>
+ <p>Added some sort handling stuff.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var ld = [];
+ var lt = [ "Image", "Text", "PDF", "Illustration", "Document" ];
+
+ for (var i=0, t; i<1000; i++)
+ {
+ t=Math.round(Math.random()*4);
+ ld.push({ name : { text : "File " + i }, size : { text : Math.round(Math.random()*100) + "kb" }, type : { text : lt[t] }, modified : { text : "Nov " + Math.round(Math.random() * 30 + 1) + " 2005" }, rights: { text : "-rw-r--r--" }});
+ };
+
+ var lc =
+ {
+ name : { label : "Name", width : 100, type : "text", sortable : true, sortProp : "text" },
+ size: { label : "Size", width : 50, type : "text", sortable : true, sortProp : "text", sortMethod : qx.util.Compare.byIntegerString, align : "right" },
+ type : { label : "Type", width : 80, type : "text", sortable : true, sortProp : "text" },
+ modified : { label : "Last Modified", width : 150, type : "text" },
+ rights : { label : "Rights", width: 80, type : "text" }
+ };
+
+ var lv = new qx.ui.listview.ListView(ld, lc);
+
+ lv.setBorder(qx.renderer.border.BorderPresets.getInstance().shadow);
+ lv.setBackgroundColor("white");
+ lv.setWidth(600);
+ lv.setHeight(350);
+ lv.setLocation(20, 48);
+
+ qx.ui.core.ClientDocument.getInstance().add(lv);
+
+
+
+
+ // Color Themes
+ qx.manager.object.ColorManager.getInstance().createThemeList(qx.ui.core.ClientDocument.getInstance(), 20, 448);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/List_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/List_1.html
new file mode 100644
index 0000000000..843ce723ba
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/List_1.html
@@ -0,0 +1,127 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>List implementation</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var l1 = new qx.ui.form.List;
+
+ l1.set({ top : 48, left: 20, height: 200, width: 150, overflow : "scrollY" });
+
+ var item;
+ for( var i=1; i<=35; i++ )
+ {
+ // item = new qx.ui.form.ListItem("Item No " + i);
+ item = new qx.ui.form.ListItem("Item No " + i, "icon/" + ((i % 4) ? "16" : "48") + "/places/folder.png");
+
+ !(i % 9) && (item.setEnabled(false));
+
+ l1.add(item);
+ };
+
+ d.add(l1);
+
+ var l2 = new qx.ui.form.List;
+
+ l2.set({ top : 48, left: 400, height: 200, width: 150 });
+ l2.getManager().setMultiSelection(false);
+ //l2.setOverflow("scrollY");
+ l2.setHeight("auto");
+
+ var l2l = [ "red", "violett", "rose", "blue", "green", "cyan", "magenta", "yellow", "brown", "orange", "black", "white", "grey", "gray", "brown" ];
+
+ for (var i=0; i<l2l.length; i++) {
+ l2.add(new qx.ui.form.ListItem(l2l[i]));
+ };
+
+ d.add(l2);
+
+
+
+
+ var c1 = new qx.ui.form.CheckBox("Enable Multi-Selection");
+ var c2 = new qx.ui.form.CheckBox("Enable Drag-Selection");
+ var c3 = new qx.ui.form.CheckBox("Allow Deselection");
+ var c4 = new qx.ui.form.CheckBox("Enable Inline Find");
+
+ c1.setLocation(180, 48);
+ c2.setLocation(180, 68);
+ c3.setLocation(180, 88);
+ c4.setLocation(180, 108);
+
+ d.add(c1, c2, c3, c4);
+
+ c1.setChecked(true);
+ c2.setChecked(true);
+ c3.setChecked(true);
+ c4.setChecked(true);
+
+ c1.addEventListener("changeChecked", function(e) {
+ l1.getManager().setMultiSelection(e.getData());
+ });
+
+ c2.addEventListener("changeChecked", function(e) {
+ l1.getManager().setDragSelection(e.getData());
+ });
+
+ c3.addEventListener("changeChecked", function(e) {
+ l1.getManager().setCanDeselect(e.getData());
+ });
+
+ c4.addEventListener("changeChecked", function(e) {
+ l1.setEnableInlineFind(e.getData());
+ });
+
+
+
+
+
+ var rd1 = new qx.ui.form.RadioButton("Show Label", "label");
+ var rd2 = new qx.ui.form.RadioButton("Show Icon", "icon");
+ var rd3 = new qx.ui.form.RadioButton("Show Both", "both");
+
+ rd1.set( { left: 180, top: 128 } );
+ rd2.set( { left: 180, top: 148 } );
+ rd3.set( { left: 180, top: 168 } );
+
+ d.add(rd1, rd2, rd3);
+
+ rd3.setChecked(true);
+
+ var rbm = new qx.manager.selection.RadioManager( name, [rd1, rd2, rd3]);
+
+ rbm.addEventListener("changeSelected", function(e)
+ {
+ for( var i=0; i<l1.getChildrenLength(); i++ ) {
+ l1.getChildren()[i].setShow(e.getData().getValue());
+ }
+ });
+
+
+
+
+ // Icon Themes
+ qx.manager.object.ImageManager.getInstance().createThemeList(d, 20, 400);
+
+ // Color Themes
+ qx.manager.object.ColorManager.getInstance().createThemeList(d, 200, 400);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Menu_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Menu_1.html
new file mode 100644
index 0000000000..7c3b1310ea
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Menu_1.html
@@ -0,0 +1,193 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>qx.ui.menu.Menu Implementation.</p>
+ <p>Added qx.client.Command support tests.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var q1 = new qx.client.Command("Ctrl+Z");
+ q1.addEventListener("execute", function(e) {
+ alert("Undo");
+ });
+
+ var q2 = new qx.client.Command("Ctrl+Y");
+ q2.addEventListener("execute", function(e) {
+ alert("Redo");
+ });
+
+ var q3 = new qx.client.Command("Ctrl+X");
+ q3.addEventListener("execute", function(e) {
+ alert("Cut");
+ });
+
+ var q4 = new qx.client.Command("Ctrl+C");
+ q4.addEventListener("execute", function(e) {
+ alert("Copy");
+ });
+
+ var q5 = new qx.client.Command("Ctrl+V");
+ q5.addEventListener("execute", function(e) {
+ alert("Paste");
+ });
+
+ var q6 = new qx.client.Command("Del");
+ q6.addEventListener("execute", function(e) {
+ alert("Delete");
+ });
+
+ var q7 = new qx.client.Command("Ctrl+A");
+ q7.addEventListener("execute", function(e) {
+ alert("Select All");
+ });
+
+ var q8 = new qx.client.Command("Ctrl+F");
+ q8.addEventListener("execute", function(e) {
+ alert("Search");
+ });
+
+ var q9 = new qx.client.Command("Ctrl+G");
+ q9.addEventListener("execute", function(e) {
+ alert("Search Again");
+ });
+
+ var q10 = new qx.client.Command();
+ q10.addEventListener("execute", function(e) {
+ alert("Syntax Highlighting");
+ });
+
+ var q11 = new qx.client.Command("Esc");
+ q11.addEventListener("execute", function(e) {
+ alert("Escape");
+ });
+
+ var q12 = new qx.client.Command("Space");
+ q12.addEventListener("execute", function(e) {
+ alert("Space");
+ });
+
+
+
+
+ var m2 = new qx.ui.menu.Menu;
+
+ var mb2_01 = new qx.ui.menu.Button("New Window");
+ var mb2_02 = new qx.ui.menu.Button("Overlapping");
+ var mb2_03 = new qx.ui.menu.Button("Split Vertical");
+ var mb2_04 = new qx.ui.menu.Button("Split Horizontal");
+ var mb2_05 = new qx.ui.menu.Button("Next Window");
+ var mb2_06 = new qx.ui.menu.Button("Previous Window");
+
+ m2.add(mb2_01, mb2_02, mb2_03, mb2_04, mb2_05, mb2_06);
+
+
+
+
+ var m3 = new qx.ui.menu.Menu;
+
+ var mb3_01 = new qx.ui.menu.Button("Tahoma, 11pt");
+ var mb3_02 = new qx.ui.menu.Button("Tahoma, 12pt");
+ var mb3_03 = new qx.ui.menu.Button("Tahoma, 13pt");
+ var mb3_04 = new qx.ui.menu.Button("Tahoma, 14pt");
+ var mb3_05 = new qx.ui.menu.Button("Tahoma, 15pt");
+
+ m3.add(mb3_01, mb3_02, mb3_03, mb3_04, mb3_05);
+
+
+
+ var m1 = new qx.ui.menu.Menu;
+
+ var mb1_01 = new qx.ui.menu.Button("View/Lists", null, q12);
+ var mb1_02 = new qx.ui.menu.Button("Syntax Highlighting", null, q10);
+ var ms1 = new qx.ui.menu.Separator();
+ var mb1_03 = new qx.ui.menu.Button("Window Font", null, q11);
+ var mb1_04 = new qx.ui.menu.Button("Printer Font", null, null, m3);
+ var ms2 = new qx.ui.menu.Separator();
+ var mb1_05 = new qx.ui.menu.Button("Undo", null, q1);
+ var mb1_06 = new qx.ui.menu.Button("Redo", null, q2);
+ var ms3 = new qx.ui.menu.Separator();
+ var mb1_07 = new qx.ui.menu.Button("Cut", "icon/16/actions/edit-cut.png", q3);
+ var mb1_08 = new qx.ui.menu.Button("Copy", "icon/16/actions/edit-copy.png", q4);
+ var mb1_09 = new qx.ui.menu.Button("Paste", "icon/16/actions/edit-paste.png", q5);
+ var mb1_10 = new qx.ui.menu.Button("Delete", "icon/16/actions/edit-delete.png", q6);
+ var mb1_11 = new qx.ui.menu.Button("Select All", null, q7);
+ var ms4 = new qx.ui.menu.Separator();
+ var mb1_12 = new qx.ui.menu.Button("Search", null, q8);
+ var mb1_13 = new qx.ui.menu.Button("Search Again", null, q9);
+ var ms5 = new qx.ui.menu.Separator();
+ var mb1_14 = new qx.ui.menu.Button("View", null, null, m2);
+ var mb1_15 = new qx.ui.menu.Button("Editor Settings...");
+ var mb1_16 = new qx.ui.menu.Button("Editor Plugins");
+ var mb1_17 = new qx.ui.menu.Button("Framework Settings");
+
+ m1.add(mb1_01, mb1_02, ms1, mb1_03, mb1_04, ms2, mb1_05, mb1_06, ms3, mb1_07, mb1_08, mb1_09, mb1_10, mb1_11, ms4, mb1_12, mb1_13, ms5, mb1_14, mb1_15, mb1_16, mb1_17);
+
+
+ d.add(m1, m2, m3);
+
+
+
+
+
+ var w1 = new qx.ui.form.Button("Open");
+
+ w1.setTop(48);
+ w1.setLeft(20);
+
+ w1.addEventListener("click", function(e)
+ {
+ if (m1.isSeeable())
+ {
+ m1.hide();
+ }
+ else
+ {
+ var el = this.getElement();
+
+ m1.setLeft(qx.html.Location.getPageBoxLeft(el));
+ m1.setTop(qx.html.Location.getPageBoxBottom(el));
+
+ m1.show();
+ };
+
+ e.setPropagationStopped(true);
+ });
+
+ w1.addEventListener("mousedown", function(e)
+ {
+ e.setPropagationStopped(true);
+ });
+
+
+ d.add(w1);
+
+
+
+
+
+
+ // Icon Themes
+ qx.manager.object.ImageManager.getInstance().createThemeList(d, 180, 48);
+
+ // Color Themes
+ qx.manager.object.ColorManager.getInstance().createThemeList(d, 380, 48);
+
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/NativeWindow_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/NativeWindow_1.html
new file mode 100644
index 0000000000..55fab71439
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/NativeWindow_1.html
@@ -0,0 +1,198 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Native Windows. Could be understood as an enhanced window.open with some additional options like to create modal windows.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var w1 = new qx.client.NativeWindow("http://www.google.com");
+
+ w1.setDimension(600, 400);
+
+
+ w1.addEventListener("load", function(e) {
+ this.debug("Content loaded: " + this.isLoaded());
+ });
+
+ w1.addEventListener("close", function(e) {
+ this.debug("Window closed: " + this.isClosed());
+ });
+
+
+
+
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var btn1 = new qx.ui.form.Button("Open Native Window", "icon/16/apps/preferences-desktop-wallpaper.png");
+ with(btn1)
+ {
+ setTop(48);
+ setLeft(20);
+
+ addEventListener("click", function() { w1.open(); } );
+ };
+
+ d.add(btn1);
+
+
+
+
+
+ var l = new qx.ui.layout.VerticalBoxLayout;
+ l.setLocation(20, 96);
+ l.setWidth("auto");
+ l.setHeight("auto");
+ d.add(l);
+
+ var fs1 = new qx.ui.groupbox.GroupBox("Initial Settings");
+ fs1.setHeight("auto");
+ l.add(fs1);
+
+
+ var chk1 = new qx.ui.form.CheckBox("Resizeable");
+ chk1.setLocation(0, 0);
+ chk1.setChecked(true);
+ chk1.addEventListener("changeChecked", function(e) {
+ w1.setResizeable(e.getData());
+ });
+
+ var chk2 = new qx.ui.form.CheckBox("Show Statusbar");
+ chk2.setLocation(0, 20);
+ chk2.setChecked(false);
+ chk2.addEventListener("changeChecked", function(e) {
+ w1.setShowStatusbar(e.getData());
+ });
+
+ var chk3 = new qx.ui.form.CheckBox("Show Menubar");
+ chk3.setLocation(0, 40);
+ chk3.setChecked(false);
+ chk3.addEventListener("changeChecked", function(e) {
+ w1.setShowMenubar(e.getData());
+ });
+
+ var chk4 = new qx.ui.form.CheckBox("Show Location");
+ chk4.setLocation(0, 60);
+ chk4.setChecked(false);
+ chk4.addEventListener("changeChecked", function(e) {
+ w1.setShowLocation(e.getData());
+ });
+
+ var chk5 = new qx.ui.form.CheckBox("Show Toolbar");
+ chk5.setLocation(0, 80);
+ chk5.setChecked(false);
+ chk5.addEventListener("changeChecked", function(e) {
+ w1.setShowToolbar(e.getData());
+ });
+
+ var chk6 = new qx.ui.form.CheckBox("Allow Scrollbars");
+ chk6.setLocation(0, 100);
+ chk6.setChecked(true);
+ chk6.addEventListener("changeChecked", function(e) {
+ w1.setAllowScrollbars(e.getData());
+ });
+
+ var chk7 = new qx.ui.form.CheckBox("Modal");
+ chk7.setLocation(0, 120);
+ chk7.setChecked(false);
+ chk7.addEventListener("changeChecked", function(e) {
+ w1.setModal(e.getData());
+ });
+
+ var chk8 = new qx.ui.form.CheckBox("Dependent");
+ chk8.setLocation(0, 140);
+ chk8.setChecked(true);
+ chk8.addEventListener("changeChecked", function(e) {
+ w1.setDependent(e.getData());
+ });
+
+ fs1.add(chk1, chk2, chk3, chk4, chk5, chk6, chk7, chk8);
+
+
+
+
+
+
+
+
+ var fs2 = new qx.ui.groupbox.GroupBox("Runtime Settings");
+ fs2.setHeight("auto");
+ l.add(fs2);
+
+
+
+ var tf1 = new qx.ui.form.TextField("http://www.google.com");
+ tf1.setLocation(0, 2);
+ tf1.setWidth(150);
+
+ var btn1 = new qx.ui.form.Button("Set Url", "icon/16/actions/dialog-ok.png");
+ btn1.setLocation(155, 0);
+ btn1.addEventListener("click", function() {
+ w1.setUrl(tf1.getValue());
+ });
+
+
+
+
+ var tf2 = new qx.ui.form.TextField("600");
+ tf2.setLocation(0, 42);
+ tf2.setWidth(50);
+
+ var btn2 = new qx.ui.form.Button("Set Width", "icon/16/actions/dialog-ok.png");
+ btn2.setLocation(55, 40);
+ btn2.addEventListener("click", function() {
+ w1.setWidth(parseInt(tf2.getValue()));
+ });
+
+
+
+
+ var tf3 = new qx.ui.form.TextField("400");
+ tf3.setLocation(0, 72);
+ tf3.setWidth(50);
+
+ var btn3 = new qx.ui.form.Button("Set Height", "icon/16/actions/dialog-ok.png");
+ btn3.setLocation(55, 70);
+ btn3.addEventListener("click", function() {
+ w1.setHeight(parseInt(tf3.getValue()));
+ });
+
+
+
+ var btn4 = new qx.ui.form.Button("Center to screen", "icon/16/apps/graphics-image-viewer.png");
+ btn4.setLocation(0, 110);
+ btn4.addEventListener("click", function() {
+ w1.centerToScreen()
+ });
+
+ var btn5 = new qx.ui.form.Button("Center to screen area", "icon/16/apps/graphics-image-viewer.png");
+ btn5.setLocation(0, 140);
+ btn5.addEventListener("click", function() {
+ w1.centerToScreenArea()
+ });
+
+ var btn6 = new qx.ui.form.Button("Center to opener", "icon/16/apps/graphics-image-viewer.png");
+ btn6.setLocation(0, 170);
+ btn6.addEventListener("click", function() {
+ w1.centerToOpener()
+ });
+
+
+
+ fs2.add(tf1, btn1, tf2, btn2, tf3, btn3, btn4, btn5, btn6);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/RadioButton_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/RadioButton_1.html
new file mode 100644
index 0000000000..05d558e800
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/RadioButton_1.html
@@ -0,0 +1,114 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Tests for qx.ui.form.RadioButton. qx.ui.form.RadioButton extends qx.ui.basic.Atom and so it inherits all the options and properties defined there.</p>
+ <p>To group multiple QxRadioButtons you must define a instance of qx.manager.selection.RadioManager and add them to this new instance. All QxRadioButtons assigned to the same group make sure that only one of them is checked at the same time.</p>
+ <p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var rb1 = new qx.ui.form.RadioButton("Option #1", "rb1");
+ with(rb1)
+ {
+ setTop(80);
+ setLeft(20);
+ };
+ d.add(rb1);
+
+ var rb2 = new qx.ui.form.RadioButton("Option #2", "rb2");
+ with(rb2)
+ {
+ setTop(110);
+ setLeft(20);
+ };
+ d.add(rb2);
+ rb2.setChecked(true);
+
+
+ var rb3 = new qx.ui.form.RadioButton("Top RadioButton", "rb3");
+ with(rb3)
+ {
+ setTop(160);
+ setLeft(20);
+ setIconPosition("top");
+ };
+ d.add(rb3);
+
+ var rb4 = new qx.ui.form.RadioButton("Bottom RadioButton", "rb4");
+ with(rb4)
+ {
+ setTop(160);
+ setLeft(160);
+ setIconPosition("bottom");
+ };
+ d.add(rb4);
+
+
+ var rb5 = new qx.ui.form.RadioButton("Left RadioButton", "rb5");
+ with(rb5)
+ {
+ setTop(220);
+ setLeft(20);
+ setIconPosition("left");
+ };
+ d.add(rb5);
+
+ var rb6 = new qx.ui.form.RadioButton("Right RadioButton", "rb6");
+ with(rb6)
+ {
+ setTop(220);
+ setLeft(160);
+ setIconPosition("right");
+ };
+ d.add(rb6);
+
+ var rb7 = new qx.ui.form.RadioButton(null, "rb7");
+ with(rb7)
+ {
+ setTop(280);
+ setLeft(20);
+ };
+ d.add(rb7);
+
+
+ var rg1 = new qx.manager.selection.RadioManager("mygroup", [rb1, rb2, rb3, rb4, rb5, rb6, rb7]);
+
+
+
+
+
+ var linfo = new qx.ui.basic.Atom("Current Value: \"" + rg1.getSelected().getLabel() + "\" (" + rg1.getSelected().getValue() + ")", "icon/16/actions/go-next.png");
+
+ with(linfo)
+ {
+ setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ setPadding(2, 4);
+ setBackgroundColor("white");
+ setTop(48);
+ setLeft(20);
+ };
+
+ rg1.addEventListener("changeSelected", function(e) {
+ linfo.setLabel("Current Value: \"" + e.getData().getLabel() + "\" (" + e.getData().getValue() + ")");
+ });
+
+ d.add(linfo);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/RepeatButton_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/RepeatButton_1.html
new file mode 100644
index 0000000000..e0281c273a
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/RepeatButton_1.html
@@ -0,0 +1,73 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Test the qx.ui.form.RepeatButton constructor. qx.ui.form.RepeatButton is based on qx.ui.form.Button but adds some interval handled event mechanism.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ function buttonExecute() { this.debug("Executed: " + this.getLabel()); };
+
+ var btn1 = new qx.ui.form.RepeatButton("Repeat Button No #1");
+ with(btn1)
+ {
+ setTop(48);
+ setLeft(20);
+ addEventListener("execute", buttonExecute);
+ };
+
+ d.add(btn1);
+
+
+
+ var btn2 = new qx.ui.form.RepeatButton("Repeat Button No #2");
+ with(btn2)
+ {
+ setTop(48);
+ setLeft(160);
+ addEventListener("execute", buttonExecute);
+ setEnabled(false);
+ };
+
+ d.add(btn2);
+
+
+
+ var btn3 = new qx.ui.form.RepeatButton("Repeat Button No #3");
+ with(btn3)
+ {
+ setTop(48);
+ setLeft(300);
+ addEventListener("execute", buttonExecute);
+ };
+
+ d.add(btn3);
+
+
+ var btn4 = new qx.ui.form.RepeatButton("Repeat Button No #4", "icon/16/actions/go-next.png");
+ with(btn4)
+ {
+ setTop(148);
+ setLeft(20);
+ addEventListener("execute", buttonExecute);
+ };
+
+ d.add(btn4);
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Resizer_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Resizer_1.html
new file mode 100755
index 0000000000..b71aa774d0
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Resizer_1.html
@@ -0,0 +1,63 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Test for qx.ui.resizer.Rezizer.</p>
+ <p>
+ The Resizer widget acts as a wrapper of another widget. It allows the child widget to be resized by the end user.
+ </p>
+ </div>
+
+ <script type="text/javascript">
+ function newResizer() {
+ var tArea = new qx.ui.form.TextArea;
+ tArea.setValue("Resize me\nI'm resizable");
+ tArea.set({
+ minWidth: 100,
+ minHeight: 50,
+ width: 200,
+ height: 100
+ });
+ return new qx.ui.resizer.Resizer(tArea);
+ }
+
+ function newHBox() {
+ var hBox = new qx.ui.layout.BoxLayout;
+ hBox.set({
+ spacing: 10
+ });
+ hBox.auto();
+ hBox.add(newResizer(), newResizer());
+ return hBox;
+ }
+
+ qx.core.Init.getInstance().defineMain(function() {
+ var vBox = new qx.ui.layout.VerticalBoxLayout;
+ var list = new qx.ui.form.List;
+ list.set({width: 100, height: 200, minWidth: 50, minHeight: 100, overflow: 'auto'});
+ for (var i = 0; i < 100; i++) {
+ list.add(new qx.ui.form.ListItem('Option number '+i));
+ }
+ vBox.add(new qx.ui.resizer.Resizer(list));
+ vBox.set({
+ spacing: 10,
+ top: 50,
+ left: 30
+ });
+ vBox.auto();
+ vBox.add(newHBox(), newHBox());
+ vBox.addToDocument();
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/RpcTreeFullControl_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/RpcTreeFullControl_1.html
new file mode 100644
index 0000000000..dbbc46fedf
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/RpcTreeFullControl_1.html
@@ -0,0 +1,194 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link
+ type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+
+ <div id="demoDescription">
+ <p><strong>Only works together with a RPC backend!</strong></p>
+ <p>
+ Shows a tree which listens for tree events. This script communicates via
+ JSON-RPC to a backend server. Each time a new tree node is opened, the
+ children are requested from the server. See the server-side functions
+ at backend/php/services/qooxdoo/fs.php.
+ </p>
+ </div>
+
+<script type="text/javascript">
+qx.core.Init.getInstance().defineMain(
+ function()
+ {
+ var addChildren = function(parent, children)
+ {
+ var t;
+ var trs;
+ var child;
+
+ for (i = 0; i < children.length; i++)
+ {
+ child = children[i];
+
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().newRow();
+
+ // Here's our indentation and tree-lines
+ trs.addIndent();
+
+ // If not a file or directory, change the icon
+ var bIsDirectory = ((child.mode & 0040000) != 0);
+ var bIsFile = ((child.mode & 0100000) != 0);
+ if (! bIsDirectory && ! bIsFile)
+ {
+ trs.addIcon("icon/16/places/user-desktop.png",
+ "icon/16/apps/accessories-dictionary.png");
+ }
+ else
+ {
+ trs.addIcon();
+ }
+
+ // The label
+ trs.addLabel(child.name);
+
+ // All else should be right justified
+ obj = new qx.ui.basic.HorizontalSpacer;
+ trs.addObject(obj, true);
+
+ // Add the permissions
+ mode = "";
+ mode = ((child.mode & 0001) ? "x" : "-") + mode;
+ mode = ((child.mode & 0002) ? "w" : "-") + mode;
+ mode = ((child.mode & 0004) ? "r" : "-") + mode;
+ mode = ((child.mode & 0010) ? "x" : "-") + mode;
+ mode = ((child.mode & 0020) ? "w" : "-") + mode;
+ mode = ((child.mode & 0040) ? "r" : "-") + mode;
+ mode = ((child.mode & 0100) ? "x" : "-") + mode;
+ mode = ((child.mode & 0200) ? "w" : "-") + mode;
+ mode = ((child.mode & 0400) ? "r" : "-") + mode;
+ obj = new qx.ui.basic.Label(mode);
+ obj.setWidth(80);
+ obj.setStyleProperty("fontFamily", "monospace");
+ trs.addObject(obj, true);
+
+ // Add a file size, date and mode
+ obj = new qx.ui.basic.Label(child.size + "");
+ obj.setWidth(50);
+ obj.setStyleProperty("fontFamily", "monospace");
+ trs.addObject(obj, true);
+
+ var d = new Date();
+ d.setTime(child.mtime * 1000);
+ obj = new qx.ui.basic.Label(d.toString().slice(0,33));
+ obj.setWidth(200);
+ obj.setStyleProperty("fontFamily", "monospace");
+ trs.addObject(obj, true);
+
+ if (bIsDirectory)
+ {
+ t = new qx.ui.treefullcontrol.TreeFolder(trs);
+ }
+ else
+ {
+ t = new qx.ui.treefullcontrol.TreeFile(trs);
+ }
+ parent.add(t);
+ }
+ }
+
+ /*
+ * Reset the default of always showing the plus/minus symbol. The
+ * default is 'false'. We want to always display it for each folder
+ * (and then stop displaying it if we determine upon open that there
+ * are no contents).
+ */
+ var constructor = qx.OO.classes["qx.ui.treefullcontrol.TreeFolder"];
+ qx.Proto = constructor.prototype;
+ qx.OO.changeProperty({
+ name : "alwaysShowPlusMinusSymbol",
+ type : "boolean",
+ defaultValue : true });
+
+ var rpc = new qx.io.remote.Rpc();
+ rpc.setTimeout(10000);
+ rpc.setUrl("/services/");
+ rpc.setServiceName("qooxdoo.fs");
+ rpc.setCrossDomain(false);
+
+ var mycall = null;
+
+ var trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Root");
+ var t = new qx.ui.treefullcontrol.Tree(trs);
+
+ with(t)
+ {
+ setBackgroundColor(255);
+ setBorder(qx.renderer.border.BorderPresets.getInstance().inset);
+ setOverflow("scrollY");
+
+ setHeight(null);
+ setTop(48);
+ setLeft(20);
+ setWidth(700);
+ setBottom(48);
+
+ setHideNode(true); // hide the root node
+ setUseTreeLines(true); // display tree lines
+ };
+
+ /*
+ * All subtrees will use this root node's event listeners. Create an
+ * event listener for an open while empty.
+ */
+ t.addEventListener(
+ "treeOpenWhileEmpty",
+ function(e)
+ {
+ var parent = e.getData();
+ var hierarchy = parent.getHierarchy(new Array());
+
+ parent.debug("Requesting children...");
+
+ // Strip off the root node
+ hierarchy.shift();
+
+ mycall = rpc.callAsync(
+ function(result, ex, id)
+ {
+ mycall = null;
+ if (ex == null) {
+ parent.debug("Children obtained. Rendering...");
+ addChildren(parent, result);
+ parent.debug("Rendering complete.");
+ } else {
+ alert("Async(" + id + ") exception: " + ex);
+ }
+ },
+ "readDirEntries",
+ hierarchy,
+ true);
+ });
+
+ qx.ui.core.ClientDocument.getInstance().add(t);
+
+ var trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Sandbox");
+ var tf = new qx.ui.treefullcontrol.TreeFolder(trs);
+ t.add(tf);
+ });
+/*
+ * Local Variables:
+ * mode: java
+ * End:
+ */
+</script>
+
+</body>
+</html>
+
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Spinner_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Spinner_1.html
new file mode 100644
index 0000000000..bdeb65cb10
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Spinner_1.html
@@ -0,0 +1,107 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Test for qx.ui.form.Spinner.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+ var s1 = new qx.ui.form.Spinner;
+
+ with(s1)
+ {
+ setLeft(20);
+ setTop(64);
+ };
+
+ d.add(s1);
+
+ d.add( (new qx.ui.basic.Label("100").set({left:20, top:48})) );
+ d.add( (new qx.ui.basic.Label("0").set({left:20, top:90})) );
+
+ var s2 = new qx.ui.form.Spinner;
+
+ with(s2)
+ {
+ setLeft(100);
+ setTop(64);
+ setValue(30);
+ setMin(-30);
+ setMax(30);
+ };
+
+ d.add(s2);
+
+ d.add( (new qx.ui.basic.Label("30").set({left:100, top:48})) );
+ d.add( (new qx.ui.basic.Label("-30").set({left:100, top:90})) );
+
+ var s3 = new qx.ui.form.Spinner;
+
+ with(s3)
+ {
+ setLeft(180);
+ setTop(64);
+ setValue(0);
+ setMin(-3000);
+ setMax(3000);
+ setIncrementAmount(5);
+ };
+
+ d.add(s3);
+
+ d.add( (new qx.ui.basic.Label("3000").set({left:180, top:48})) );
+ d.add( (new qx.ui.basic.Label("-3000").set({left:180, top:90})) );
+
+ /*
+ s3._manager.addEventListener("changeValue", function(e) {
+ this.debug("Value: " + e.getData());
+ });
+ */
+
+ var s4 = new qx.ui.form.Spinner;
+
+ with(s4)
+ {
+ setLeft(260);
+ setTop(64);
+ setValue(0);
+ setMin(100);
+ setMax(200);
+ };
+
+ d.add(s4);
+
+ d.add( (new qx.ui.basic.Label("200").set({left:260, top:48})) );
+ d.add( (new qx.ui.basic.Label("100").set({left:260, top:90})) );
+
+
+ var s5 = new qx.ui.form.Spinner( -200, null, -100);
+
+ with(s5)
+ {
+ setLeft(340);
+ setTop(64);
+ };
+
+ d.add(s5);
+
+ d.add( (new qx.ui.basic.Label("-100").set({left:340, top:48})) );
+ d.add( (new qx.ui.basic.Label("-200").set({left:340, top:90})) );
+
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/SplitPane_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/SplitPane_1.html
new file mode 100644
index 0000000000..fbeed10a36
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/SplitPane_1.html
@@ -0,0 +1,72 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Test for normal width Splitpane, no holding knobs, live resize enabled.</p>
+ </div>
+
+ <script type="text/javascript">
+
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var frame = new qx.ui.layout.CanvasLayout;
+ frame.setLocation(20, 48);
+ frame.setBottom(48);
+ frame.setRight(300);
+ frame.setBackgroundColor("#134275");
+ frame.setPadding(20);
+ frame.addToDocument();
+
+ // the splitpane itself
+ var splitpane = new qx.ui.splitpane.HorizontalSplitPane("1*", "2*");
+ splitpane.setEdge(0);
+ splitpane.setLiveResize(true);
+ frame.add(splitpane);
+
+ // left Widget
+ var leftWidget = new qx.ui.form.TextArea("LeftWidget");
+ leftWidget.setWrap(true);
+ leftWidget.setBackgroundColor(new qx.renderer.color.Color("white"));
+ leftWidget.setWidth("100%");
+ leftWidget.setHeight("100%");
+
+ // rightWidget (another splitpane)
+ var rightWidget = new qx.ui.splitpane.VerticalSplitPane;
+ rightWidget.setHeight("100%");
+ rightWidget.setWidth("100%");
+ rightWidget.setLiveResize(true);
+
+ // add widgets to splitpane
+ splitpane.addLeft(leftWidget);
+ splitpane.addRight(rightWidget);
+
+
+
+ // right top widget
+ var topWidget = new qx.ui.form.TextArea("Right Top Widget");
+ topWidget.setBackgroundColor(new qx.renderer.color.Color("white"));
+ topWidget.setHeight("100%");
+ topWidget.setWidth("100%");
+
+ // right bottom widget
+ var bottomWidget = new qx.ui.embed.Iframe("http://www.qooxdoo.org");
+ bottomWidget.setHeight("100%");
+ bottomWidget.setWidth("100%");
+
+ // add widgets to right splitpane
+ rightWidget.addTop(topWidget);
+ rightWidget.addBottom(bottomWidget);
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/SplitPane_2.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/SplitPane_2.html
new file mode 100644
index 0000000000..5041e62928
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/SplitPane_2.html
@@ -0,0 +1,75 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Test for extra slim Splitpane, with holding knobs.</p>
+ </div>
+
+ <script type="text/javascript">
+
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var frame = new qx.ui.layout.CanvasLayout;
+ frame.setLocation(20, 48);
+ frame.setBottom(48);
+ frame.setRight(300);
+ frame.setBackgroundColor("#134275");
+ frame.setPadding(20);
+ frame.addToDocument();
+
+ // the splitpane itself
+ var splitpane = new qx.ui.splitpane.HorizontalSplitPane("1*", "2*");
+ splitpane.setEdge(0);
+ splitpane.setSplitterSize(1);
+ splitpane.setShowKnob(true);
+ frame.add(splitpane);
+
+ // left Widget
+ var leftWidget = new qx.ui.form.TextArea("LeftWidget");
+ leftWidget.setWrap(true);
+ leftWidget.setBackgroundColor(new qx.renderer.color.Color("white"));
+ leftWidget.setWidth("100%");
+ leftWidget.setHeight("100%");
+
+ // rightWidget (another splitpane)
+ var rightWidget = new qx.ui.splitpane.VerticalSplitPane;
+ rightWidget.setHeight("100%");
+ rightWidget.setWidth("100%");
+ rightWidget.setSplitterSize(1);
+ rightWidget.setShowKnob(true);
+
+
+ // add widgets to splitpane
+ splitpane.addLeft(leftWidget);
+ splitpane.addRight(rightWidget);
+
+
+
+ // right top widget
+ var topWidget = new qx.ui.form.TextArea("Right Top Widget");
+ topWidget.setBackgroundColor(new qx.renderer.color.Color("white"));
+ topWidget.setHeight("100%");
+ topWidget.setWidth("100%");
+
+ // right bottom widget
+ var bottomWidget = new qx.ui.embed.Iframe("http://www.qooxdoo.org");
+ bottomWidget.setHeight("100%");
+ bottomWidget.setWidth("100%");
+
+ // add widgets to right splitpane
+ rightWidget.addTop(topWidget);
+ rightWidget.addBottom(bottomWidget);
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/TabView_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/TabView_1.html
new file mode 100644
index 0000000000..caaf10d027
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/TabView_1.html
@@ -0,0 +1,156 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Tabbar implementation.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var tf1 = new qx.ui.pageview.tabview.TabView;
+ tf1.set({ left: 20, top: 48, right: 335, bottom: 48 });
+
+ var t1_1 = new qx.ui.pageview.tabview.Button("Edit");
+ var t1_2 = new qx.ui.pageview.tabview.Button("Find");
+ var t1_3 = new qx.ui.pageview.tabview.Button("Backup");
+
+
+ t1_2.setChecked(true);
+
+ tf1.getBar().add(t1_1, t1_2, t1_3);
+
+ var p1_1 = new qx.ui.pageview.tabview.Page(t1_1);
+ var p1_2 = new qx.ui.pageview.tabview.Page(t1_2);
+ var p1_3 = new qx.ui.pageview.tabview.Page(t1_3);
+
+ tf1.getPane().add(p1_1, p1_2, p1_3);
+
+ var f2 = new qx.ui.form.TextField("Find Anywhere");
+ var f3 = new qx.ui.form.TextField("Backup Input");
+
+ p1_2.add(f2);
+ p1_3.add(f3);
+
+ var c1 = new qx.ui.form.CheckBox("Place bar on top");
+ var c2 = new qx.ui.form.CheckBox("Align tabs to left");
+
+ c1.setTop(0);
+ c1.setChecked(true);
+
+ c2.setTop(20);
+ c2.setChecked(true);
+
+ p1_1.add(c1, c2);
+
+ c1.addEventListener("changeChecked", function(e) {
+ tf1.setPlaceBarOnTop(e.getData());
+ });
+
+ c2.addEventListener("changeChecked", function(e) {
+ tf1.setAlignTabsToLeft(e.getData());
+ });
+
+
+
+
+ var tf2 = new qx.ui.pageview.tabview.TabView;
+
+ tf2.set({ left: 0, top: 50, right: 0, bottom: 0 });
+
+
+
+ var t2_1 = new qx.ui.pageview.tabview.Button("Search for Files", "icon/16/actions/document-open.png");
+ var t2_2 = new qx.ui.pageview.tabview.Button("Search the Web", "icon/16/categories/applications-internet.png");
+ var t2_3 = new qx.ui.pageview.tabview.Button("Search for Text", "icon/16/categories/applications.png");
+ var t2_4 = new qx.ui.pageview.tabview.Button("Search for Persons", "icon/16/apps/accessories-archiver.png");
+ var t2_5 = new qx.ui.pageview.tabview.Button("Search in Mails", "icon/16/apps/internet-email-client.png");
+
+ t2_1.setChecked(true);
+
+ tf2.getBar().add(t2_1, t2_2, t2_3, t2_4, t2_5);
+
+ var p2_1 = new qx.ui.pageview.tabview.Page(t2_1);
+ var p2_2 = new qx.ui.pageview.tabview.Page(t2_2);
+ var p2_3 = new qx.ui.pageview.tabview.Page(t2_3);
+ var p2_4 = new qx.ui.pageview.tabview.Page(t2_4);
+ var p2_5 = new qx.ui.pageview.tabview.Page(t2_5);
+
+ tf2.getPane().add(p2_1, p2_2, p2_3, p2_4, p2_5);
+
+ var t2_1 = new qx.ui.form.TextField("Files...");
+ var t2_2 = new qx.ui.form.TextField("Web...");
+ var t2_3 = new qx.ui.form.TextField("Printers...");
+ var t2_4 = new qx.ui.form.TextField("Persons...");
+ var t2_5 = new qx.ui.form.TextField("Mails...");
+
+ t2_1.set({ top: 2, left: 0, width: 140 });
+ t2_2.set({ top: 2, left: 0, width: 140 });
+ t2_3.set({ top: 2, left: 0, width: 140 });
+ t2_4.set({ top: 2, left: 0, width: 140 });
+ t2_5.set({ top: 2, left: 0, width: 140 });
+
+ p2_1.add(t2_1);
+ p2_2.add(t2_2);
+ p2_3.add(t2_3);
+ p2_4.add(t2_4);
+ p2_5.add(t2_5);
+
+ var b2_1 = new qx.ui.form.Button("Search", "icon/16/actions/edit-find.png");
+ var b2_2 = new qx.ui.form.Button("Search", "icon/16/actions/edit-find.png");
+ var b2_3 = new qx.ui.form.Button("Search", "icon/16/actions/edit-find.png");
+ var b2_4 = new qx.ui.form.Button("Search", "icon/16/actions/edit-find.png");
+ var b2_5 = new qx.ui.form.Button("Search", "icon/16/actions/edit-find.png");
+
+ b2_1.set({ top: 0, left: 150 });
+ b2_2.set({ top: 0, left: 150 });
+ b2_3.set({ top: 0, left: 150 });
+ b2_4.set({ top: 0, left: 150 });
+ b2_5.set({ top: 0, left: 150 });
+
+ p2_1.add(b2_1);
+ p2_2.add(b2_2);
+ p2_3.add(b2_3);
+ p2_4.add(b2_4);
+ p2_5.add(b2_5);
+
+ function dosearch(e) {
+ alert("Searching...");
+ };
+
+ b2_1.addEventListener("click", dosearch);
+ b2_2.addEventListener("click", dosearch);
+ b2_3.addEventListener("click", dosearch);
+ b2_4.addEventListener("click", dosearch);
+ b2_5.addEventListener("click", dosearch);
+
+
+
+
+ p1_2.add(tf2);
+
+
+
+
+
+
+ d.add(tf1);
+
+
+ t1_1.setEnabled(false);
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/TabView_2.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/TabView_2.html
new file mode 100644
index 0000000000..2e1fea67cb
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/TabView_2.html
@@ -0,0 +1,127 @@
+<html>
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+ </head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Tabbar implementation.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var tf1 = new qx.ui.pageview.tabview.TabView;
+ tf1.set({ left: 20, top: 48, right: 335, bottom: 48 });
+
+ var t1_1 = new qx.ui.pageview.tabview.Button("Edit");
+ var t1_2 = new qx.ui.pageview.tabview.Button("Find");
+ var t1_3 = new qx.ui.pageview.tabview.Button("Backup");
+ var t1_4 = new qx.ui.pageview.tabview.Button("System");
+ var t1_5 = new qx.ui.pageview.tabview.Button("Tools");
+ var t1_6 = new qx.ui.pageview.tabview.Button("Infos");
+
+ // set tab 1 active
+ t1_1.setChecked(true);
+
+ // add close images to tab
+ t1_1.setShowCloseButton(true);
+ t1_2.setShowCloseButton(true);
+ t1_3.setShowCloseButton(true);
+ t1_4.setShowCloseButton(true);
+ t1_5.setShowCloseButton(true);
+ t1_6.setShowCloseButton(true);
+
+
+ // modify the default images
+ t1_2.setCloseButtonImage("icon/16/status/dialog-error.png");
+ t1_4.setCloseButtonImage("icon/16/actions/dialog-ok.png");
+
+ // add an eventlistener on the buttons
+ t1_1.addEventListener("closetab", _ontabclose);
+ t1_2.addEventListener("closetab", _ontabclose);
+ t1_3.addEventListener("closetab", _ontabclose);
+ t1_4.addEventListener("closetab", _ontabclose);
+ t1_5.addEventListener("closetab", _ontabclose);
+ t1_6.addEventListener("closetab", _ontabclose);
+
+
+
+ // this handler gets called if a tab-button fires a "closetab" event
+ function _ontabclose(e){
+ var btn = e.getData();
+
+ var pagesArray = tf1.getPane().getChildren();
+ var pageSearched = null;
+
+ for(var i = 0, l = pagesArray.length; i < l; i++){
+ var tmpPage = pagesArray[i];
+ if(tmpPage.getButton() === btn){
+ pageSearched = tmpPage;
+ }
+ }
+ if(pageSearched){
+
+ var itemsList = tf1.getBar().getChildren();
+ var lengthList = itemsList.length;
+ var btnIndex = itemsList.indexOf(btn);
+
+ // never remove the last tab
+ if( lengthList > 1 ) {
+
+ // Select another tab
+ if (btnIndex < lengthList-1 ){
+ itemsList[btnIndex+1].setChecked(true);
+ }
+ else {
+ itemsList[btnIndex-1].setChecked(true);
+ }
+
+ btn.getManager().remove(btn);
+ tf1.getBar().remove(btn);
+
+ tf1.getPane().remove(pageSearched);
+
+ pageSearched.dispose();
+ btn.dispose();
+ } else {
+ alert("Last Tab won't be removed!");
+ }
+ }
+
+ e.stopPropagation();
+ }
+
+ tf1.getBar().add(t1_1, t1_2, t1_3, t1_4, t1_5, t1_6);
+
+ var p1_1 = new qx.ui.pageview.tabview.Page(t1_1);
+ var p1_2 = new qx.ui.pageview.tabview.Page(t1_2);
+ var p1_3 = new qx.ui.pageview.tabview.Page(t1_3);
+ var p1_4 = new qx.ui.pageview.tabview.Page(t1_4);
+ var p1_5 = new qx.ui.pageview.tabview.Page(t1_5);
+ var p1_6 = new qx.ui.pageview.tabview.Page(t1_6);
+
+ p1_1.setBackgroundColor("green");
+ p1_2.setBackgroundColor("red");
+ p1_3.setBackgroundColor("blue");
+ p1_4.setBackgroundColor("black");
+ p1_5.setBackgroundColor("yellow");
+ p1_6.setBackgroundColor("orange");
+
+ tf1.getPane().add(p1_1, p1_2, p1_3, p1_4, p1_5, p1_6);
+
+ d.add(tf1);
+
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Table_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Table_1.html
new file mode 100644
index 0000000000..3accffc630
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Table_1.html
@@ -0,0 +1,107 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>A table with virtual scrolling, model-view-controller, renderers,
+ editing, sorting, column resizing, column reordering,
+ column hiding.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var main = new qx.ui.layout.VerticalBoxLayout();
+ main.set({ left:10, top:30, right:300, bottom:30, spacing:5 });
+
+ var nextId = 0;
+ var createRandomRows = function(rowCount) {
+ var rowData = [];
+ var now = new Date().getTime();
+ var dateRange = 400 * 24 * 60 * 60 * 1000; // 400 days
+ for (var row = 0; row < rowCount; row++) {
+ var date = new Date(now + Math.random() * dateRange - dateRange / 2);
+ rowData.push([ nextId++, Math.random() * 10000, date, (Math.random() > 0.5) ]);
+ }
+ return rowData;
+ };
+
+ // Create the initial data
+ var rowData = createRandomRows(50);
+
+ // Add some encoding relevant stuff
+ rowData[15][1] = "<b>A html &amp; entities escaping test</b>";
+
+ // table model
+ var tableModel = new qx.ui.table.SimpleTableModel();
+ tableModel.setColumns([ "ID", "A number", "A date", "Boolean test" ]);
+ tableModel.setData(rowData);
+ tableModel.setColumnEditable(1, true);
+ tableModel.setColumnEditable(2, true);
+
+ // table
+ var table = new qx.ui.table.Table(tableModel);
+ with (table) {
+ set({ width:"100%", height:"1*", border:qx.renderer.border.BorderPresets.getInstance().thinInset });
+ getSelectionModel().setSelectionMode(qx.ui.table.SelectionModel.MULTIPLE_INTERVAL_SELECTION);
+ getTableColumnModel().setDataCellRenderer(3, new qx.ui.table.BooleanDataCellRenderer());
+ setColumnWidth(0, 80);
+ setColumnWidth(1, 200);
+ setColumnWidth(2, 150);
+ };
+ main.add(table);
+
+ var buttonBar = new qx.ui.layout.HorizontalBoxLayout();
+ buttonBar.set({ width:"100%", height:"auto", spacing:5 });
+ main.add(buttonBar);
+
+ var button = new qx.ui.form.Button("Change row with ID 10");
+ button.addEventListener("execute", function(evt) {
+ var rowData = createRandomRows(1);
+ for (var i = 1; i < tableModel.getColumnCount(); i++) {
+ tableModel.setValue(i, 10, rowData[0][i]);
+ }
+ this.info("Row 10 changed");
+ });
+ buttonBar.add(button);
+
+ var button = new qx.ui.form.Button("Add 10 rows");
+ button.addEventListener("execute", function(evt) {
+ var rowData = createRandomRows(10);
+ tableModel.addRows(rowData);
+ this.info("10 rows added");
+ });
+ buttonBar.add(button);
+
+ var button = new qx.ui.form.Button("Remove 5 rows");
+ button.addEventListener("execute", function(evt) {
+ var rowCount = tableModel.getRowCount();
+ tableModel.removeRows(rowCount-5, 5);
+ this.info("5 rows removed");
+ });
+ buttonBar.add(button);
+
+ var checkBox = new qx.ui.form.CheckBox("keepFirstVisibleRowComplete", null, null, table.getKeepFirstVisibleRowComplete());
+ checkBox.setToolTip(new qx.ui.popup.ToolTip("Whether the the first visible row should be rendered completely when scrolling."));
+ checkBox.addEventListener("changeChecked", function(evt) {
+ table.setKeepFirstVisibleRowComplete(checkBox.getChecked());
+ this.info("Set keepFirstVisibleRowComplete to: " + checkBox.getChecked());
+ });
+ buttonBar.add(checkBox);
+
+ d.add(main);
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Table_2.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Table_2.html
new file mode 100644
index 0000000000..372648cd8f
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Table_2.html
@@ -0,0 +1,50 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>A table with fixed columns.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ // table model
+ var tableModel = new qx.ui.table.SimpleTableModel();
+ tableModel.setColumns([ "ID", "A number", "A date", "Boolean test" ]);
+ var rowData = [];
+ var now = new Date().getTime();
+ var dateRange = 400 * 24 * 60 * 60 * 1000; // 400 days
+ for (var row = 0; row < 100; row++) {
+ var date = new Date(now + Math.random() * dateRange - dateRange / 2);
+ rowData.push([ row, Math.random() * 10000, date, (Math.random() > 0.5) ]);
+ }
+ tableModel.setData(rowData);
+ tableModel.setColumnEditable(1, true);
+ tableModel.setColumnEditable(2, true);
+
+ // table
+ var table = new qx.ui.table.Table(tableModel);
+ with (table) {
+ set({ left:10, top:30, width:350, height:300, border:qx.renderer.border.BorderPresets.getInstance().thinInset });
+ setMetaColumnCounts([1, -1]);
+ getSelectionModel().setSelectionMode(qx.ui.table.SelectionModel.MULTIPLE_INTERVAL_SELECTION);
+ getTableColumnModel().setDataCellRenderer(3, new qx.ui.table.BooleanDataCellRenderer());
+ };
+
+ d.add(table);
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ToolBar_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ToolBar_1.html
new file mode 100644
index 0000000000..a44c023c34
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ToolBar_1.html
@@ -0,0 +1,252 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Introduce all classes needed for creating real qx.ui.toolbar.ToolBars. This includes qx.ui.toolbar.ToolBars,
+ qx.ui.toolbar.ToolBarParts, qx.ui.toolbar.Separator and qx.ui.toolbar.ToolBarButtons.</p>
+
+ <p>The qx.ui.toolbar.ToolBarButtons and QxRadioButtons in this example are beautifully
+ decoupled by "global" qx.event.type.DataEvent.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var tb = new qx.ui.toolbar.ToolBar;
+ with(tb)
+ {
+ setTop(48);
+ setLeft(20);
+ setRight(335);
+
+ // setWidth("auto");
+ };
+
+ var btns1 = [
+ { type : "button", icon : "document-new", text : "New" },
+ { type : "separator" },
+ { type : "button", icon : "edit-copy", text : "Copy" },
+ { type : "button", icon : "edit-cut", text : "Cut" },
+ { type : "button", icon : "edit-paste", text : "Paste" }
+ ];
+
+ var btns2 = [
+ { type : "button", icon : "go-up", text : "Upload" },
+ { type : "button", icon : "go-down", text : "Download" }
+ ];
+
+ var btns3 = [
+ { type : "button", icon : "help-about", text : "Help" }
+ ];
+
+ var bars = [ btns1, btns2, btns3 ];
+
+ function changeLayout(e) {
+ this.setShow(e.getData());
+ };
+
+ function changeSize(e) {
+ var v = e.getData();
+ var o = v == 22 ? 32 : 22;
+
+ this.setIcon(this.getIcon().replace(o, v));
+ };
+
+ function buttonExecute() { this.debug("Executed: " + this.getLabel()); };
+
+ var useParts = true;
+
+
+ for (var j=0; j<bars.length; j++)
+ {
+ var btns = bars[j];
+
+ if (useParts) {
+ var tbp = new qx.ui.toolbar.Part;
+ };
+
+ for (var i=0; i<btns.length; i++)
+ {
+ var btn = btns[i];
+
+ switch(btn.type)
+ {
+ case "separator":
+ var o = new qx.ui.toolbar.Separator;
+ break;
+
+ case "button":
+ var o = new qx.ui.toolbar.Button(btn.text, "icon/22/actions/" + btn.icon + ".png");
+
+ // beautiful decoupling: toolbar buttons don't know about radio boxes
+
+ d.addEventListener("changeLayout", changeLayout, o);
+ d.addEventListener("changeSize", changeSize, o);
+
+ o.addEventListener("execute", buttonExecute);
+ break;
+ };
+
+ if (useParts)
+ {
+ tbp.add(o);
+ }
+ else
+ {
+ tb.add(o);
+ };
+ };
+
+ if (useParts) {
+ tb.add(tbp);
+ };
+ };
+
+ d.add(tb);
+
+
+
+
+
+
+ var rd1 = new qx.ui.form.RadioButton("Show Icons and Label", "both");
+ var rd2 = new qx.ui.form.RadioButton("Show Icons", "icon");
+ var rd3 = new qx.ui.form.RadioButton("Show Label", "label");
+
+ with(rd1)
+ {
+ setTop(140);
+ setLeft(20);
+ setChecked(true);
+ };
+
+ with(rd2)
+ {
+ setTop(160);
+ setLeft(20);
+ };
+
+ with(rd3)
+ {
+ setTop(180);
+ setLeft(20);
+ };
+
+
+ var rbm = new qx.manager.selection.RadioManager();
+
+ rbm.add(rd1);
+ rbm.add(rd2);
+ rbm.add(rd3);
+
+
+ // beautiful decoupling: radio boxes don't know about toolbar buttons
+ rbm.addEventListener("changeSelected", function(e) {
+ d.dispatchEvent( new qx.event.type.DataEvent("changeLayout", e.getData().getValue() ) );
+ });
+
+ d.add(rd1, rd2, rd3);
+
+
+
+ // Alignment
+ var ra1 = new qx.ui.form.RadioButton("Left Aligned", "left");
+ var ra2 = new qx.ui.form.RadioButton("Centered", "center");
+ var ra3 = new qx.ui.form.RadioButton("Right Aligned", "right");
+
+ with(ra1)
+ {
+ setTop(140);
+ setLeft(220);
+ setChecked(true);
+ };
+
+ with(ra2)
+ {
+ setTop(160);
+ setLeft(220);
+ };
+
+ with(ra3)
+ {
+ setTop(180);
+ setLeft(220);
+ };
+
+
+ var ram = new qx.manager.selection.RadioManager();
+
+ ram.add(ra1);
+ ram.add(ra2);
+ ram.add(ra3);
+
+ d.add(ra1, ra2, ra3);
+
+ ram.addEventListener("changeSelected", function(e) {
+ tb.setHorizontalChildrenAlign(e.getData().getValue());
+ });
+
+
+
+
+ // Icon Sizes
+ var b3 = new qx.ui.form.Button("Icons: 22 Pixel", "icon/16/actions/format-color.png");
+
+ with(b3)
+ {
+ setTop(140);
+ setLeft(420);
+ setHorizontalAlign("center");
+ };
+
+ b3.addEventListener("execute", function(e) {
+ d.dispatchEvent(new qx.event.type.DataEvent("changeSize", 22));
+ });
+
+ var b4 = new qx.ui.form.Button("Icons: 32 Pixel", "icon/16/actions/format-color.png");
+
+ with(b4)
+ {
+ setTop(170);
+ setLeft(420);
+ setHorizontalAlign("center");
+ };
+
+ b4.addEventListener("execute", function(e) {
+ d.dispatchEvent(new qx.event.type.DataEvent("changeSize", 32));
+ });
+
+ d.add(b3, b4);
+
+
+
+
+
+ // Icon & Color Themes
+ qx.manager.object.ImageManager.getInstance().createThemeList(d, 20, 248);
+ qx.manager.object.ColorManager.getInstance().createThemeList(d, 220, 248);
+
+
+
+ /*
+ Test for cloning support
+
+ tb2 = tb.clone(true);
+ tb2.setTop(400);
+ */
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ToolBar_2.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ToolBar_2.html
new file mode 100644
index 0000000000..9e060ebc68
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ToolBar_2.html
@@ -0,0 +1,269 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Introducing qx.ui.toolbar.CheckBox and qx.ui.toolbar.RadioButton.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ function changeLayout(e) {
+ this.setShow(e.getData());
+ };
+
+ function changeSize(e) {
+ var v = e.getData();
+ var o = v == 22 ? 32 : 22;
+
+ this.setIcon(this.getIcon().replace(o, v));
+ };
+
+ var tb = new qx.ui.toolbar.ToolBar;
+ with(tb)
+ {
+ setTop(48);
+ setLeft(20);
+ setRight(335);
+ setParent(d);
+ };
+
+
+ var tbp1 = new qx.ui.toolbar.Part;
+ tb.add(tbp1);
+
+ var tbp2 = new qx.ui.toolbar.Part;
+ tb.add(tbp2);
+
+ var tbp3 = new qx.ui.toolbar.Part;
+ tb.add(tbp3);
+
+ var tbp4 = new qx.ui.toolbar.Part;
+ tb.add(tbp4);
+
+
+
+ // Default
+ var tbd1 = new qx.ui.toolbar.Button("Default", "icon/22/actions/document-new.png");
+ tbp1.add(tbd1);
+ d.addEventListener("changeLayout", changeLayout, tbd1);
+ d.addEventListener("changeSize", changeSize, tbd1);
+
+ tbd1._marker = true;
+
+ tbp1.setDisplay(false);
+ tbd1.setDisplay(false);
+
+
+
+ // Checkbox
+ var tbc1 = new qx.ui.toolbar.CheckBox("Check", "icon/22/apps/preferences.png", true);
+ tbp2.add(tbc1);
+ d.addEventListener("changeLayout", changeLayout, tbc1);
+ d.addEventListener("changeSize", changeSize, tbc1);
+
+
+
+ // Radio
+ var tbr1 = new qx.ui.toolbar.RadioButton("Radio1", "icon/22/actions/system-run.png");
+ tbp3.add(tbr1);
+ d.addEventListener("changeLayout", changeLayout, tbr1);
+ d.addEventListener("changeSize", changeSize, tbr1);
+
+ var tbr2 = new qx.ui.toolbar.RadioButton("Radio2", "icon/22/actions/view-pane-detailed.png", true);
+ tbp3.add(tbr2);
+ d.addEventListener("changeLayout", changeLayout, tbr2);
+ d.addEventListener("changeSize", changeSize, tbr2);
+
+ var tbr3 = new qx.ui.toolbar.RadioButton("Radio3", "icon/22/actions/view-pane-icon.png");
+ tbp3.add(tbr3);
+ d.addEventListener("changeLayout", changeLayout, tbr3);
+ d.addEventListener("changeSize", changeSize, tbr3);
+
+ // Radio Mananger
+ var tbr_manager = new qx.manager.selection.RadioManager(null, [tbr1, tbr2, tbr3]);
+
+
+
+
+ // Radio
+ var tbs1 = new qx.ui.toolbar.RadioButton("Radio1", "icon/22/actions/view-pane-tree.png");
+ tbp4.add(tbs1);
+ tbs1.setDisableUncheck(true);
+ d.addEventListener("changeLayout", changeLayout, tbs1);
+ d.addEventListener("changeSize", changeSize, tbs1);
+
+ var tbs2 = new qx.ui.toolbar.RadioButton("Radio2", "icon/22/actions/view-pane-detailed.png", true);
+ tbp4.add(tbs2);
+ tbs2.setDisableUncheck(true);
+ d.addEventListener("changeLayout", changeLayout, tbs2);
+ d.addEventListener("changeSize", changeSize, tbs2);
+
+ var tbs3 = new qx.ui.toolbar.RadioButton("Radio3", "icon/22/actions/view-pane-icon.png");
+ tbp4.add(tbs3);
+ tbs3.setDisableUncheck(true);
+ d.addEventListener("changeLayout", changeLayout, tbs3);
+ d.addEventListener("changeSize", changeSize, tbs3);
+
+ // Radio Mananger
+ var tbs_manager = new qx.manager.selection.RadioManager(null, [tbs1, tbs2, tbs3]);
+
+
+
+
+ var rd1 = new qx.ui.form.RadioButton("Show Icons and Label", "both");
+ var rd2 = new qx.ui.form.RadioButton("Show Icons", "icon");
+ var rd3 = new qx.ui.form.RadioButton("Show Label", "label");
+
+ with(rd1)
+ {
+ setTop(140);
+ setLeft(20);
+ };
+
+ with(rd2)
+ {
+ setTop(160);
+ setLeft(20);
+ };
+
+ with(rd3)
+ {
+ setTop(180);
+ setLeft(20);
+ };
+
+
+ var rbm = new qx.manager.selection.RadioManager();
+
+ rbm.add(rd1);
+ rbm.add(rd2);
+ rbm.add(rd3);
+
+ // beautiful decoupling: radio boxes don't know about toolbar buttons
+ rbm.addEventListener("changeSelected", function(e)
+ {
+ d.dispatchEvent( new qx.event.type.DataEvent("changeLayout", e.getData().getValue() ) );
+ });
+
+ d.add(rd1, rd2, rd3);
+
+
+ // apply default layout
+ rd1.setChecked(true);
+
+
+
+
+
+ // Alignment
+ var ra1 = new qx.ui.form.RadioButton("Left Aligned", "left");
+ var ra2 = new qx.ui.form.RadioButton("Centered", "center");
+ var ra3 = new qx.ui.form.RadioButton("Right Aligned", "right");
+
+ with(ra1)
+ {
+ setTop(140);
+ setLeft(220);
+ setChecked(true);
+ };
+
+ with(ra2)
+ {
+ setTop(160);
+ setLeft(220);
+ };
+
+ with(ra3)
+ {
+ setTop(180);
+ setLeft(220);
+ };
+
+
+ var ram = new qx.manager.selection.RadioManager();
+
+ ram.add(ra1);
+ ram.add(ra2);
+ ram.add(ra3);
+
+ d.add(ra1, ra2, ra3);
+
+ ram.addEventListener("changeSelected", function(e) {
+ tb.setHorizontalChildrenAlign(e.getData().getValue());
+ });
+
+
+
+
+ // Icon Sizes
+ var b3 = new qx.ui.form.Button("Icons: 22 Pixel", "icon/16/actions/format-color.png");
+
+ with(b3)
+ {
+ setTop(140);
+ setLeft(420);
+ setHorizontalAlign("center");
+ };
+
+ b3.addEventListener("execute", function(e) {
+ d.dispatchEvent(new qx.event.type.DataEvent("changeSize", 22));
+ });
+
+ var b4 = new qx.ui.form.Button("Icons: 32 Pixel", "icon/16/actions/format-color.png");
+
+ with(b4)
+ {
+ setTop(170);
+ setLeft(420);
+ setHorizontalAlign("center");
+ };
+
+ b4.addEventListener("execute", function(e) {
+ d.dispatchEvent(new qx.event.type.DataEvent("changeSize", 32));
+ });
+
+ d.add(b3, b4);
+
+
+
+
+
+
+ var chkShowBtn1 = new qx.ui.form.CheckBox("Show First Button");
+
+ chkShowBtn1.setLocation(20, 500);
+ chkShowBtn1.addEventListener("changeChecked", function(e) {
+ tbd1.setDisplay(e.getData());
+ });
+
+ var chkShowPart1 = new qx.ui.form.CheckBox("Show First Part");
+
+ chkShowPart1.setLocation(220, 500);
+ chkShowPart1.addEventListener("changeChecked", function(e) {
+ tbp1.setDisplay(e.getData());
+ });
+
+ d.add(chkShowBtn1, chkShowPart1);
+
+
+
+ // Icon & Color Themes
+ qx.manager.object.ImageManager.getInstance().createThemeList(d, 20, 248);
+ qx.manager.object.ColorManager.getInstance().createThemeList(d, 220, 248);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ToolBar_3.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ToolBar_3.html
new file mode 100644
index 0000000000..2cd007f6db
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ToolBar_3.html
@@ -0,0 +1,184 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Again a nice example which shows how to use qx.ui.toolbar.ToolBar as a menubar system.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var c1 = new qx.client.Command();
+ c1.addEventListener("execute", function(e) {
+ this.debug("Execute: " + e.getData().getLabel());
+ });
+
+
+
+
+ var m1 = new qx.ui.menu.Menu;
+
+ var mb1_01 = new qx.ui.menu.Button("New", "icon/16/actions/document-new.png", c1);
+ var mb1_02 = new qx.ui.menu.Button("Open", "icon/16/actions/document-open.png", c1);
+ var mb1_03 = new qx.ui.menu.Button("Save", "icon/16/actions/document-save.png", c1);
+ var mb1_04 = new qx.ui.menu.Button("Save as", "icon/16/actions/document-save-as.png", c1);
+ var mb1_05 = new qx.ui.menu.Button("Close", "icon/16/actions/document-close.png", c1);
+ var mb1_06 = new qx.ui.menu.Button("Restore last saved", null, c1);
+
+ m1.add(mb1_01, mb1_02, mb1_03, mb1_04, mb1_05, mb1_06);
+
+
+ var m2 = new qx.ui.menu.Menu;
+
+ var mb2_01 = new qx.ui.menu.Button("Undo", null, c1);
+ var mb2_02 = new qx.ui.menu.Button("Redo", null, c1);
+ var mb2_b1 = new qx.ui.menu.Separator();
+ var mb2_03 = new qx.ui.menu.Button("Cut", "icon/16/actions/edit-cut.png", c1);
+ var mb2_04 = new qx.ui.menu.Button("Copy", "icon/16/actions/edit-copy.png", c1);
+ var mb2_05 = new qx.ui.menu.Button("Paste", "icon/16/actions/edit-paste.png", c1);
+ var mb2_06 = new qx.ui.menu.Button("Delete", "icon/16/actions/edit-delete.png", c1);
+ var mb2_b2 = new qx.ui.menu.Separator();
+ var mb2_07 = new qx.ui.menu.Button("Select All", null, c1);
+ var mb2_08 = new qx.ui.menu.Button("Find", null, c1);
+ var mb2_09 = new qx.ui.menu.Button("Find Again", null, c1);
+
+
+
+
+ mb2_05.setEnabled(false);
+ mb2_06.setEnabled(false);
+ mb2_09.setEnabled(false);
+
+ m2.add(mb2_01, mb2_02, mb2_b1, mb2_03, mb2_04, mb2_05, mb2_06, mb2_b2, mb2_07, mb2_08, mb2_09);
+
+
+ var m3 = new qx.ui.menu.Menu;
+ var m3_suba = new qx.ui.menu.Menu;
+ var m3_subb = new qx.ui.menu.Menu;
+ var m3_subc = new qx.ui.menu.Menu;
+ var m3_subd = new qx.ui.menu.Menu;
+
+ var mb3_01 = new qx.ui.menu.CheckBox("File List", c1, false);
+ var mb3_02 = new qx.ui.menu.CheckBox("Syntax Highlighting", c1, true);
+ var mb3_03 = new qx.ui.menu.CheckBox("Statusbar", c1, true);
+ var mb3_b1 = new qx.ui.menu.Separator();
+ var mb3_04 = new qx.ui.menu.Button("Printer Font", null, null, m3_suba);
+ var mb3_05 = new qx.ui.menu.Button("Editor Font", null, null, m3_subb);
+ var mb3_06 = new qx.ui.menu.Button("Export Font", null, null, m3_subc);
+ var mb3_b2 = new qx.ui.menu.Separator();
+ var mb3_07 = new qx.ui.menu.Button("Advanced", null, null, m3_subd);
+
+ m3.add(mb3_01, mb3_02, mb3_03, mb3_b1, mb3_04, mb3_05, mb3_06, mb3_b2, mb3_07);
+
+ var mb3_suba_01 = new qx.ui.menu.Button("Tahoma, 11pt", null, c1);
+ var mb3_suba_02 = new qx.ui.menu.Button("Tahoma, 12pt", null, c1);
+ var mb3_suba_03 = new qx.ui.menu.Button("Tahoma, 13pt", null, c1);
+ var mb3_suba_04 = new qx.ui.menu.Button("Tahoma, 14pt", null, c1);
+ var mb3_suba_05 = new qx.ui.menu.Button("Tahoma, 15pt", null, c1);
+
+ m3_suba.add(mb3_suba_01, mb3_suba_02, mb3_suba_03, mb3_suba_04, mb3_suba_05);
+
+ var mb3_subb_01 = new qx.ui.menu.Button("Verdana, 11pt", null, c1);
+ var mb3_subb_02 = new qx.ui.menu.Button("Verdana, 12pt", null, c1);
+ var mb3_subb_03 = new qx.ui.menu.Button("Verdana, 13pt", null, c1);
+ var mb3_subb_04 = new qx.ui.menu.Button("Verdana, 14pt", null, c1);
+ var mb3_subb_05 = new qx.ui.menu.Button("Verdana, 15pt", null, c1);
+
+ m3_subb.add(mb3_subb_01, mb3_subb_02, mb3_subb_03, mb3_subb_04, mb3_subb_05);
+
+ var mb3_subc_01 = new qx.ui.menu.Button("Courier, 11pt", null, c1);
+ var mb3_subc_02 = new qx.ui.menu.Button("Courier, 12pt", null, c1);
+ var mb3_subc_03 = new qx.ui.menu.Button("Courier, 13pt", null, c1);
+ var mb3_subc_04 = new qx.ui.menu.Button("Courier, 14pt", null, c1);
+ var mb3_subc_05 = new qx.ui.menu.Button("Courier, 15pt", null, c1);
+
+ m3_subc.add(mb3_subc_01, mb3_subc_02, mb3_subc_03, mb3_subc_04, mb3_subc_05);
+
+ var mb3_subd_02_suba = new qx.ui.menu.Menu();
+
+ var mb3_subd_02_suba_01 = new qx.ui.menu.Button("First", null, c1);
+ var mb3_subd_02_suba_02 = new qx.ui.menu.Button("Second", null, c1);
+ var mb3_subd_02_suba_03 = new qx.ui.menu.Button("Third", null, c1);
+
+ mb3_subd_02_suba.add(mb3_subd_02_suba_01, mb3_subd_02_suba_02, mb3_subd_02_suba_03);
+
+ var mb3_subd_01 = new qx.ui.menu.Button("First", null, c1);
+ var mb3_subd_02 = new qx.ui.menu.Button("Second", null, c1, mb3_subd_02_suba);
+ var mb3_subd_03 = new qx.ui.menu.Button("Third", null, c1);
+
+ m3_subd.add(mb3_subd_01, mb3_subd_02, mb3_subd_03);
+
+ var m4 = new qx.ui.menu.Menu;
+
+ var m4_suba = new qx.ui.menu.Menu;
+
+ var mb4_01 = new qx.ui.menu.Button("View", null, c1, m4_suba);
+ var mb4_b1 = new qx.ui.menu.Separator();
+ var mb4_02 = new qx.ui.menu.Button("Editor Preferences...", null, c1);
+ var mb4_03 = new qx.ui.menu.Button("Editor Extensions", null, c1);
+ var mb4_04 = new qx.ui.menu.Button("Framework Preferences", null, c1);
+
+ m4.add(mb4_01, mb4_b1, mb4_02, mb4_03, mb4_04);
+
+ var mb4_suba_01 = new qx.ui.menu.Button("New Window", null, c1);
+ var mb4_suba_b1 = new qx.ui.menu.Separator();
+ var mb4_suba_02 = new qx.ui.menu.RadioButton("Overlapping", c1, true);
+ var mb4_suba_03 = new qx.ui.menu.RadioButton("Split Horizontally", c1);
+ var mb4_suba_04 = new qx.ui.menu.RadioButton("Split Vertically", c1);
+ var mb4_suba_b2 = new qx.ui.menu.Separator();
+ var mb4_suba_05 = new qx.ui.menu.Button("Next Window", null, c1);
+ var mb4_suba_06 = new qx.ui.menu.Button("Previous Window", null, c1);
+
+ m4_suba.add(mb4_suba_01, mb4_suba_b1, mb4_suba_02, mb4_suba_03, mb4_suba_04, mb4_suba_b2, mb4_suba_05, mb4_suba_06);
+
+ var mb4_manager = new qx.manager.selection.RadioManager("windowMode", [ mb4_suba_02, mb4_suba_03, mb4_suba_04 ]);
+
+
+ var m5 = new qx.ui.menu.Menu;
+
+ var mb5_01 = new qx.ui.menu.Button("Help", null, c1);
+ var mb5_02 = new qx.ui.menu.Button("About", null, c1);
+
+ m5.add(mb5_01, mb5_02);
+
+ d.add(m1, m2, m3, m3_suba, m3_subb, m3_subc, m3_subd, mb3_subd_02_suba, m4, m4_suba, m5);
+
+
+ var mb1 = new qx.ui.toolbar.ToolBar;
+
+ mb1.setTop(48);
+ mb1.setRight(335);
+ mb1.setLeft(20);
+
+ var mbb1 = new qx.ui.toolbar.MenuButton("File", m1);
+ var mbb2 = new qx.ui.toolbar.MenuButton("Edit", m2);
+ var mbb3 = new qx.ui.toolbar.MenuButton("View", m3);
+ var mbb4 = new qx.ui.toolbar.MenuButton("Options", m4);
+ var mbb5 = new qx.ui.toolbar.MenuButton("Help", m5);
+
+ mb1.add(mbb1, mbb2, mbb3, mbb4, mbb5);
+
+ d.add(mb1);
+
+
+
+
+ // Icon & Color Themes
+ qx.manager.object.ImageManager.getInstance().createThemeList(d, 20, 348);
+ qx.manager.object.ColorManager.getInstance().createThemeList(d, 220, 348);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ToolBar_4.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ToolBar_4.html
new file mode 100644
index 0000000000..69d91c125b
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ToolBar_4.html
@@ -0,0 +1,196 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Again a nice example which shows how to use qx.ui.toolbar.ToolBar as a menubar system.</p>
+ <p>Added some parts and a new flex zone which aligns the help button to the right edge</p>
+ <p>Added some image and a qx.ui.toolbar.CheckBox, you can event combine all these features as you can easily see here.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var c1 = new qx.client.Command();
+ c1.addEventListener("execute", function(e) {
+ this.debug("Execute: " + e.getData().getLabel());
+ });
+
+
+
+
+ var m1 = new qx.ui.menu.Menu;
+
+ var mb1_01 = new qx.ui.menu.Button("New", null, c1);
+ var mb1_02 = new qx.ui.menu.Button("Open", null, c1);
+ var mb1_03 = new qx.ui.menu.Button("Save", null, c1);
+ var mb1_04 = new qx.ui.menu.Button("Save as", null, c1);
+ var mb1_05 = new qx.ui.menu.Button("Close", null, c1);
+ var mb1_06 = new qx.ui.menu.Button("Restore last saved", null, c1);
+
+ m1.add(mb1_01, mb1_02, mb1_03, mb1_04, mb1_05, mb1_06);
+
+
+ var m2 = new qx.ui.menu.Menu;
+
+ var mb2_01 = new qx.ui.menu.Button("Undo", null, c1);
+ var mb2_02 = new qx.ui.menu.Button("Redo", null, c1);
+ var mb2_b1 = new qx.ui.menu.Separator();
+ var mb2_03 = new qx.ui.menu.Button("Cut", "icon/16/actions/edit-cut.png", c1);
+ var mb2_04 = new qx.ui.menu.Button("Copy", "icon/16/actions/edit-copy.png", c1);
+ var mb2_05 = new qx.ui.menu.Button("Paste", "icon/16/actions/edit-paste.png", c1);
+ var mb2_06 = new qx.ui.menu.Button("Delete", "icon/16/actions/edit-delete.png", c1);
+ var mb2_b2 = new qx.ui.menu.Separator();
+ var mb2_07 = new qx.ui.menu.Button("Select All", null, c1);
+ var mb2_08 = new qx.ui.menu.Button("Find", null, c1);
+ var mb2_09 = new qx.ui.menu.Button("Find Again", null, c1);
+
+
+
+
+ mb2_05.setEnabled(false);
+ mb2_06.setEnabled(false);
+ mb2_09.setEnabled(false);
+
+ m2.add(mb2_01, mb2_02, mb2_b1, mb2_03, mb2_04, mb2_05, mb2_06, mb2_b2, mb2_07, mb2_08, mb2_09);
+
+
+ var m3 = new qx.ui.menu.Menu;
+ var m3_suba = new qx.ui.menu.Menu;
+ var m3_subb = new qx.ui.menu.Menu;
+ var m3_subc = new qx.ui.menu.Menu;
+ var m3_subd = new qx.ui.menu.Menu;
+
+ var mb3_01 = new qx.ui.menu.CheckBox("File List", c1, false);
+ var mb3_02 = new qx.ui.menu.CheckBox("Syntax Highlighting", c1, true);
+ var mb3_03 = new qx.ui.menu.CheckBox("Statusbar", c1, true);
+ var mb3_b1 = new qx.ui.menu.Separator();
+ var mb3_04 = new qx.ui.menu.Button("Printer Font", null, null, m3_suba);
+ var mb3_05 = new qx.ui.menu.Button("Editor Font", null, null, m3_subb);
+ var mb3_06 = new qx.ui.menu.Button("Export Font", null, null, m3_subc);
+ var mb3_b2 = new qx.ui.menu.Separator();
+ var mb3_07 = new qx.ui.menu.Button("Advanced", null, null, m3_subd);
+
+ m3.add(mb3_01, mb3_02, mb3_03, mb3_b1, mb3_04, mb3_05, mb3_06, mb3_b2, mb3_07);
+
+ var mb3_suba_01 = new qx.ui.menu.Button("Tahoma, 11pt", null, c1);
+ var mb3_suba_02 = new qx.ui.menu.Button("Tahoma, 12pt", null, c1);
+ var mb3_suba_03 = new qx.ui.menu.Button("Tahoma, 13pt", null, c1);
+ var mb3_suba_04 = new qx.ui.menu.Button("Tahoma, 14pt", null, c1);
+ var mb3_suba_05 = new qx.ui.menu.Button("Tahoma, 15pt", null, c1);
+
+ m3_suba.add(mb3_suba_01, mb3_suba_02, mb3_suba_03, mb3_suba_04, mb3_suba_05);
+
+ var mb3_subb_01 = new qx.ui.menu.Button("Verdana, 11pt", null, c1);
+ var mb3_subb_02 = new qx.ui.menu.Button("Verdana, 12pt", null, c1);
+ var mb3_subb_03 = new qx.ui.menu.Button("Verdana, 13pt", null, c1);
+ var mb3_subb_04 = new qx.ui.menu.Button("Verdana, 14pt", null, c1);
+ var mb3_subb_05 = new qx.ui.menu.Button("Verdana, 15pt", null, c1);
+
+ m3_subb.add(mb3_subb_01, mb3_subb_02, mb3_subb_03, mb3_subb_04, mb3_subb_05);
+
+ var mb3_subc_01 = new qx.ui.menu.Button("Courier, 11pt", null, c1);
+ var mb3_subc_02 = new qx.ui.menu.Button("Courier, 12pt", null, c1);
+ var mb3_subc_03 = new qx.ui.menu.Button("Courier, 13pt", null, c1);
+ var mb3_subc_04 = new qx.ui.menu.Button("Courier, 14pt", null, c1);
+ var mb3_subc_05 = new qx.ui.menu.Button("Courier, 15pt", null, c1);
+
+ m3_subc.add(mb3_subc_01, mb3_subc_02, mb3_subc_03, mb3_subc_04, mb3_subc_05);
+
+ var mb3_subd_02_suba = new qx.ui.menu.Menu();
+
+ var mb3_subd_02_suba_01 = new qx.ui.menu.Button("First", null, c1);
+ var mb3_subd_02_suba_02 = new qx.ui.menu.Button("Second", null, c1);
+ var mb3_subd_02_suba_03 = new qx.ui.menu.Button("Third", null, c1);
+
+ mb3_subd_02_suba.add(mb3_subd_02_suba_01, mb3_subd_02_suba_02, mb3_subd_02_suba_03);
+
+ var mb3_subd_01 = new qx.ui.menu.Button("First", null, c1);
+ var mb3_subd_02 = new qx.ui.menu.Button("Second", null, c1, mb3_subd_02_suba);
+ var mb3_subd_03 = new qx.ui.menu.Button("Third", null, c1);
+
+ m3_subd.add(mb3_subd_01, mb3_subd_02, mb3_subd_03);
+
+ var m4 = new qx.ui.menu.Menu;
+
+ var m4_suba = new qx.ui.menu.Menu;
+
+ var mb4_01 = new qx.ui.menu.Button("View", null, c1, m4_suba);
+ var mb4_b1 = new qx.ui.menu.Separator();
+ var mb4_02 = new qx.ui.menu.Button("Editor Preferences...", null, c1);
+ var mb4_03 = new qx.ui.menu.Button("Editor Extensions", null, c1);
+ var mb4_04 = new qx.ui.menu.Button("Framework Preferences", null, c1);
+
+ m4.add(mb4_01, mb4_b1, mb4_02, mb4_03, mb4_04);
+
+ var mb4_suba_01 = new qx.ui.menu.Button("New Window", null, c1);
+ var mb4_suba_b1 = new qx.ui.menu.Separator();
+ var mb4_suba_02 = new qx.ui.menu.RadioButton("Overlapping", c1, true);
+ var mb4_suba_03 = new qx.ui.menu.RadioButton("Split Horizontally", c1);
+ var mb4_suba_04 = new qx.ui.menu.RadioButton("Split Vertically", c1);
+ var mb4_suba_b2 = new qx.ui.menu.Separator();
+ var mb4_suba_05 = new qx.ui.menu.Button("Next Window", null, c1);
+ var mb4_suba_06 = new qx.ui.menu.Button("Previous Window", null, c1);
+
+ m4_suba.add(mb4_suba_01, mb4_suba_b1, mb4_suba_02, mb4_suba_03, mb4_suba_04, mb4_suba_b2, mb4_suba_05, mb4_suba_06);
+
+ var mb4_manager = new qx.manager.selection.RadioManager("windowMode", [ mb4_suba_02, mb4_suba_03, mb4_suba_04 ]);
+
+
+ var m5 = new qx.ui.menu.Menu;
+
+ var mb5_01 = new qx.ui.menu.Button("Help", null, c1);
+ var mb5_02 = new qx.ui.menu.Button("About", null, c1);
+
+ m5.add(mb5_01, mb5_02);
+
+ d.add(m1, m2, m3, m3_suba, m3_subb, m3_subc, m3_subd, mb3_subd_02_suba, m4, m4_suba, m5);
+
+
+ var mb1 = new qx.ui.toolbar.ToolBar;
+
+ mb1.setTop(48);
+ mb1.setRight(335);
+ mb1.setLeft(20);
+
+ var mp1 = new qx.ui.toolbar.Part;
+ var mp2 = new qx.ui.toolbar.Part;
+ var mp3 = new qx.ui.toolbar.Part;
+
+ mb1.add(mp1, mp2, new qx.ui.basic.HorizontalSpacer, mp3);
+
+ var mbb1 = new qx.ui.toolbar.MenuButton("File", m1, "icon/16/actions/document-new.png");
+ var mbb2 = new qx.ui.toolbar.MenuButton("Edit", m2, "icon/16/actions/edit.png");
+ var mbb3 = new qx.ui.toolbar.MenuButton("View", m3, "icon/16/apps/preferences-desktop-wallpaper.png");
+ var mbb4 = new qx.ui.toolbar.MenuButton("Options", m4, "icon/16/apps/system-software-update.png");
+ var mbb5 = new qx.ui.toolbar.MenuButton("Help", m5, "icon/16/actions/help-about.png");
+
+ var tbb1 = new qx.ui.toolbar.CheckBox("Checkbox", "icon/16/apps/office-organizer.png", true);
+
+ mp1.add(mbb1, mbb2);
+ mp2.add(mbb3, mbb4, tbb1);
+ mp3.add(mbb5);
+
+ d.add(mb1);
+
+
+
+
+ // Icon & Color Themes
+ qx.manager.object.ImageManager.getInstance().createThemeList(d, 20, 348);
+ qx.manager.object.ColorManager.getInstance().createThemeList(d, 220, 348);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ToolTip_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ToolTip_1.html
new file mode 100644
index 0000000000..8cbf4b9855
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/ToolTip_1.html
@@ -0,0 +1,111 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Test for QxToolTips. Each qx.ui.popup.ToolTip could be assigned to any
+ instance of qx.ui.core.Widget. You could also use one qx.ui.popup.ToolTip instance
+ for multiple QxWidgets (to show the same tooltip any multiple items).</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var c1 = new qx.ui.basic.Atom("Hover me");
+ with(c1)
+ {
+ setTop(48);
+ setLeft(20);
+ setBackgroundColor(new qx.renderer.color.Color("#BDD2EF"));
+ setWidth(100);
+ setHeight(100);
+ setTabIndex(1);
+ setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ };
+ d.add(c1);
+
+
+
+ var c2 = new qx.ui.basic.Atom("Hover me");
+ with(c2)
+ {
+ setTop(48);
+ setLeft(140);
+ setBackgroundColor(new qx.renderer.color.Color("#D1DFAD"));
+ setWidth(100);
+ setHeight(100);
+ setTabIndex(1);
+ setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ };
+ d.add(c2);
+
+
+ var c3 = new qx.ui.basic.Atom("Hover me");
+ with(c3)
+ {
+ setTop(48);
+ setLeft(260);
+ setBackgroundColor(new qx.renderer.color.Color("#D1A4AD"));
+ setWidth(100);
+ setHeight(100);
+ setTabIndex(1);
+ setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ };
+ d.add(c3);
+
+
+ var c4 = new qx.ui.basic.Atom("Hover me");
+ with(c4)
+ {
+ setTop(48);
+ setLeft(380);
+ setBackgroundColor(new qx.renderer.color.Color("#F5E0BB"));
+ setWidth(100);
+ setHeight(100);
+ setTabIndex(1);
+ setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ };
+ d.add(c4);
+
+
+ var c5 = new qx.ui.basic.Atom("Hover me", "icon/32/actions/format-color.png");
+ with(c5)
+ {
+ setTop(248);
+ setLeft(20);
+ setBackgroundColor(new qx.renderer.color.Color("#F5E0BB"));
+ setTabIndex(1);
+ setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ setPadding(4);
+ };
+ d.add(c5);
+
+
+ var tt1 = new qx.ui.popup.ToolTip("Hello World #1");
+ c1.setToolTip(tt1);
+ c2.setToolTip(tt1);
+
+ var tt2 = new qx.ui.popup.ToolTip(null, "icon/16/actions/help-about.png");
+ c3.setToolTip(tt2);
+
+ var tt3 = new qx.ui.popup.ToolTip("Hello World #3", "icon/16/actions/help-about.png");
+ c4.setToolTip(tt3);
+
+ var tt4 = new qx.ui.popup.ToolTip("Such a great tooltip with a<br/>(show) timeout of 50ms.", "icon/32/apps/graphics-snapshot.png");
+ c5.setToolTip(tt4);
+ tt4.setShowInterval(50);
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/TreeFullControl_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/TreeFullControl_1.html
new file mode 100644
index 0000000000..ac037d7711
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/TreeFullControl_1.html
@@ -0,0 +1,235 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Shows a tree, with user-defined icons for some nodes.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Root");
+ var t = new qx.ui.treefullcontrol.Tree(trs);
+
+ with(t)
+ {
+ setBackgroundColor(255);
+ setBorder(qx.renderer.border.BorderPresets.getInstance().inset);
+ setOverflow("scrollY");
+
+ setHeight(null);
+ setTop(48);
+ setLeft(20);
+ setWidth(200);
+ setBottom(48);
+ };
+
+ qx.ui.core.ClientDocument.getInstance().add(t);
+ // One icon for selected and one for unselected states
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Desktop", "icon/16/places/user-desktop.png", "icon/16/apps/accessories-dictionary.png");
+ var te1 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ t.add(te1);
+
+ desktop = te1;
+
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Files");
+ var te1_1 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Workspace");
+ var te1_2 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Network");
+ var te1_3 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Trash");
+ var te1_4 = new qx.ui.treefullcontrol.TreeFolder(trs);
+
+ te1.add(te1_1, te1_2, te1_3, te1_4);
+
+ // One icon specified, and used for both selected unselected states
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Windows (C:)", "icon/16/devices/drive-harddisk.png");
+ var te1_2_1 = new qx.ui.treefullcontrol.TreeFile(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Documents (D:)", "icon/16/devices/drive-harddisk.png");
+ var te1_2_2 = new qx.ui.treefullcontrol.TreeFile(trs);
+
+ te1_2.add(te1_2_1, te1_2_2);
+
+ arbeitsplatz = te1_2;
+
+
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Inbox");
+ var te2 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ posteingang = te2;
+
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Presets");
+ var te2_1 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Sent");
+ var te2_2 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Trash", "icon/16/places/user-trash.png");
+ var te2_3 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Data");
+ var te2_4 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Edit");
+ var te2_5 = new qx.ui.treefullcontrol.TreeFolder(trs);
+
+ editieren = te2_5;
+
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Chat");
+ var te2_5_1 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Pustefix");
+ var te2_5_2 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("TINC");
+ var te2_5_3 = new qx.ui.treefullcontrol.TreeFolder(trs);
+
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Announce");
+ var te2_5_3_1 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Devel");
+ var te2_5_3_2 = new qx.ui.treefullcontrol.TreeFolder(trs);
+
+ te2_5_3.add(te2_5_3_1, te2_5_3_2);
+
+ te2_5.add(te2_5_1, te2_5_2, te2_5_3);
+
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Lists");
+ var te2_6 = new qx.ui.treefullcontrol.TreeFolder(trs);
+
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Relations");
+ var te2_6_1 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Company");
+ var te2_6_2 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Questions");
+ var te2_6_3 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Internal");
+ var te2_6_4 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Products");
+ var te2_6_5 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Press");
+ var te2_6_6 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Development");
+ var te2_6_7 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Competition");
+ var te2_6_8 = new qx.ui.treefullcontrol.TreeFolder(trs);
+
+ te2_6.add(te2_6_1, te2_6_2, te2_6_3, te2_6_4, te2_6_5, te2_6_6, te2_6_7, te2_6_8);
+
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Personal");
+ var te2_7 = new qx.ui.treefullcontrol.TreeFolder(trs);
+
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Bugs");
+ var te2_7_1 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Family");
+ var te2_7_2 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Projects");
+ var te2_7_3 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Holiday");
+ var te2_7_4 = new qx.ui.treefullcontrol.TreeFolder(trs);
+
+ te2_7.add(te2_7_1, te2_7_2, te2_7_3, te2_7_4);
+
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Big");
+ var te2_8 = new qx.ui.treefullcontrol.TreeFolder(trs);
+
+ for (var i=0;i<50; i++) {
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Item " + i);
+ te2_8.add(new qx.ui.treefullcontrol.TreeFolder(trs));
+ };
+
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Spam");
+ var te2_9 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ spam = te2_9;
+
+ te2.add(te2_1, te2_2, te2_3, te2_4, te2_5, te2_6, te2_7, te2_8, te2_9);
+
+ t.add(te2);
+ qx.ui.core.ClientDocument.getInstance().add(t);
+
+
+
+
+
+
+ var commandFrame = new qx.ui.groupbox.GroupBox("Control");
+
+ with(commandFrame)
+ {
+ setTop(48);
+ setLeft(250);
+
+ setWidth("auto");
+ setHeight("auto");
+ };
+
+ qx.ui.core.ClientDocument.getInstance().add(commandFrame);
+
+
+
+
+ var tCurrentLabel = new qx.ui.basic.Atom("Current Folder: ");
+
+ with(tCurrentLabel)
+ {
+ setLeft(0);
+ setTop(0);
+ };
+
+ commandFrame.add(tCurrentLabel);
+
+
+
+ var tCurrentInput = new qx.ui.form.TextField;
+
+ with(tCurrentInput)
+ {
+ setLeft(0);
+ setRight(0);
+ setTop(20);
+
+ setReadOnly(true);
+ };
+
+ commandFrame.add(tCurrentInput);
+
+ t.getManager().addEventListener("changeSelection", function(e) {
+ tCurrentInput.setValue(e.getData()[0]._labelObject.getHtml());
+ });
+
+
+
+ var tDoubleClick = new qx.ui.form.CheckBox("Use double click?");
+
+ with(tDoubleClick) {
+ setTop(60);
+ setLeft(0);
+ };
+
+ commandFrame.add(tDoubleClick);
+
+ tDoubleClick.addEventListener("changeChecked", function(e) { t.setUseDoubleClick(e.getData()); });
+
+
+
+
+ var tTreeLines = new qx.ui.form.CheckBox("Use tree lines?");
+
+ with(tTreeLines) {
+ setTop(80);
+ setLeft(0);
+ setChecked(true);
+ };
+
+ commandFrame.add(tTreeLines);
+
+ tTreeLines.addEventListener("changeChecked", function(e) { t.setUseTreeLines(e.getData()); });
+
+
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/TreeFullControl_2.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/TreeFullControl_2.html
new file mode 100644
index 0000000000..1bddc43cf0
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/TreeFullControl_2.html
@@ -0,0 +1,270 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+<p>Shows a tree, with user-defined extra fields. In this example, the extra
+fields include a left-justified icon, a checkbox between the node icon and the
+label, and a whole series of right-justified fields. Additionally, the root node may be hidden. </p>
+ </div>
+
+ <script type="text/javascript">
+ var treeRowStructure;
+
+ function stuff(vLabel, vIcon, vIconSelected)
+ {
+ treeRowStructure = qx.ui.treefullcontrol.TreeRowStructure.getInstance().newRow();
+
+ // A left-justified icon
+ if (Math.floor(Math.random() * 4) == 0)
+ {
+ obj = new qx.ui.basic.Image("icon/16/apps/accessories-alarm.png", 16);
+ }
+ else
+ {
+ obj = new qx.ui.basic.Image(null, 16);
+ }
+ treeRowStructure.addObject(obj, true);
+
+ // Here's our indentation and tree-lines
+ treeRowStructure.addIndent();
+
+ // The standard tree icon follows
+ treeRowStructure.addIcon(
+ arguments.length >= 2 ? vIcon : "icon/16/places/user-desktop.png",
+ arguments.length >= 3 ? vIconSelected : "icon/16/apps/accessories-dictionary.png");
+
+ // A checkbox comes right after the tree icon
+ obj = new qx.ui.form.CheckBox(
+ null, "23", null, Math.floor(Math.random() * 2) == 0 ? false : true);
+ obj.setPadding(0, 0);
+ treeRowStructure.addObject(obj, true);
+
+ // The label
+ treeRowStructure.addLabel(vLabel);
+
+ // All else should be right justified
+ obj = new qx.ui.basic.HorizontalSpacer;
+ treeRowStructure.addObject(obj, true);
+
+ // Add a file size, date and mode
+ obj = new qx.ui.basic.Label(Math.round(Math.random() * 100) + "kb");
+ obj.setWidth(50);
+ treeRowStructure.addObject(obj, true);
+ obj = new qx.ui.basic.Label(
+ "May " + Math.round(Math.random() * 30 + 1) + " 2005");
+ obj.setWidth(150);
+ treeRowStructure.addObject(obj, true);
+ obj = new qx.ui.basic.Label("-rw-r--r--");
+ obj.setWidth(80);
+ treeRowStructure.addObject(obj, true);
+
+ return treeRowStructure;
+ }
+
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var x = new qx.ui.basic.Atom("Test #1", "icon/16/actions/view-refresh.png", 16, 16);
+ x.debug("In main");
+
+ var t = new qx.ui.treefullcontrol.Tree(stuff("Root"));
+ with(t)
+ {
+ setBackgroundColor(255);
+ setBorder(qx.renderer.border.BorderPresets.getInstance().inset);
+ setOverflow("scrollY");
+
+ setHeight(null);
+ setTop(48);
+ setLeft(20);
+ setWidth(600);
+ setBottom(48);
+ };
+
+ qx.ui.core.ClientDocument.getInstance().add(t);
+ // One icon for selected and one for unselected states
+ var te1 = new qx.ui.treefullcontrol.TreeFolder(stuff("Desktop"));
+ t.add(te1);
+
+ desktop = te1;
+
+ var te1_1 = new qx.ui.treefullcontrol.TreeFolder(stuff("Files"));
+ var te1_2 = new qx.ui.treefullcontrol.TreeFolder(stuff("Workspace"));
+ var te1_3 = new qx.ui.treefullcontrol.TreeFolder(stuff("Network"));
+ var te1_4 = new qx.ui.treefullcontrol.TreeFolder(stuff("Trash"));
+
+ te1.add(te1_1, te1_2, te1_3, te1_4);
+
+ // One icon specified, and used for both selected unselected states
+ var te1_2_1 = new qx.ui.treefullcontrol.TreeFile(stuff("Windows (C:)", "icon/16/devices/drive-harddisk.png"));
+ var te1_2_2 = new qx.ui.treefullcontrol.TreeFile(stuff("Documents (D:)", "icon/16/devices/drive-harddisk.png"));
+
+ te1_2.add(te1_2_1, te1_2_2);
+
+ arbeitsplatz = te1_2;
+
+
+ var te2 = new qx.ui.treefullcontrol.TreeFolder(stuff("Inbox"));
+ posteingang = te2;
+
+ var te2_1 = new qx.ui.treefullcontrol.TreeFolder(stuff("Presets"));
+ var te2_2 = new qx.ui.treefullcontrol.TreeFolder(stuff("Sent"));
+ var te2_3 = new qx.ui.treefullcontrol.TreeFolder(stuff("Trash", "icon/16/places/user-trash.png"));
+ var te2_4 = new qx.ui.treefullcontrol.TreeFolder(stuff("Data"));
+ var te2_5 = new qx.ui.treefullcontrol.TreeFolder(stuff("Edit"));
+
+ editieren = te2_5;
+
+ var te2_5_1 = new qx.ui.treefullcontrol.TreeFolder(stuff("Chat"));
+ var te2_5_2 = new qx.ui.treefullcontrol.TreeFolder(stuff("Pustefix"));
+ var te2_5_3 = new qx.ui.treefullcontrol.TreeFolder(stuff("TINC"));
+
+ var te2_5_3_1 = new qx.ui.treefullcontrol.TreeFolder(stuff("Announce"));
+ var te2_5_3_2 = new qx.ui.treefullcontrol.TreeFolder(stuff("Devel"));
+
+ te2_5_3.add(te2_5_3_1, te2_5_3_2);
+
+ te2_5.add(te2_5_1, te2_5_2, te2_5_3);
+
+ var te2_6 = new qx.ui.treefullcontrol.TreeFolder(stuff("Lists"));
+
+ var te2_6_1 = new qx.ui.treefullcontrol.TreeFolder(stuff("Relations"));
+ var te2_6_2 = new qx.ui.treefullcontrol.TreeFolder(stuff("Company"));
+ var te2_6_3 = new qx.ui.treefullcontrol.TreeFolder(stuff("Questions"));
+ var te2_6_4 = new qx.ui.treefullcontrol.TreeFolder(stuff("Internal"));
+ var te2_6_5 = new qx.ui.treefullcontrol.TreeFolder(stuff("Products"));
+ var te2_6_6 = new qx.ui.treefullcontrol.TreeFolder(stuff("Press"));
+ var te2_6_7 = new qx.ui.treefullcontrol.TreeFolder(stuff("Development"));
+ var te2_6_8 = new qx.ui.treefullcontrol.TreeFolder(stuff("Competition"));
+
+ te2_6.add(te2_6_1, te2_6_2, te2_6_3, te2_6_4, te2_6_5, te2_6_6, te2_6_7, te2_6_8);
+
+ var te2_7 = new qx.ui.treefullcontrol.TreeFolder(stuff("Personal"));
+
+ var te2_7_1 = new qx.ui.treefullcontrol.TreeFolder(stuff("Bugs"));
+ var te2_7_2 = new qx.ui.treefullcontrol.TreeFolder(stuff("Family"));
+ var te2_7_3 = new qx.ui.treefullcontrol.TreeFolder(stuff("Projects"));
+ var te2_7_4 = new qx.ui.treefullcontrol.TreeFolder(stuff("Holiday"));
+
+ te2_7.add(te2_7_1, te2_7_2, te2_7_3, te2_7_4);
+
+ var te2_8 = new qx.ui.treefullcontrol.TreeFolder(stuff("Big"));
+
+ for (var i=0;i<50; i++) {
+ te2_8.add(new qx.ui.treefullcontrol.TreeFolder(stuff("Item " + i)));
+ };
+
+ var te2_9 = new qx.ui.treefullcontrol.TreeFolder(stuff("Spam"));
+ spam = te2_9;
+
+ te2.add(te2_1, te2_2, te2_3, te2_4, te2_5, te2_6, te2_7, te2_8, te2_9);
+
+ t.add(te2);
+ qx.ui.core.ClientDocument.getInstance().add(t);
+
+
+
+
+
+
+ var commandFrame = new qx.ui.groupbox.GroupBox("Control");
+
+ with(commandFrame)
+ {
+ setTop(48);
+ setLeft(650);
+
+ setWidth("auto");
+ setHeight("auto");
+ };
+
+ qx.ui.core.ClientDocument.getInstance().add(commandFrame);
+
+
+
+
+ var tCurrentLabel = new qx.ui.basic.Atom("Current Folder: ");
+
+ with(tCurrentLabel)
+ {
+ setLeft(0);
+ setTop(0);
+ };
+
+ commandFrame.add(tCurrentLabel);
+
+
+
+ var tCurrentInput = new qx.ui.form.TextField;
+
+ with(tCurrentInput)
+ {
+ setLeft(0);
+ setRight(0);
+ setTop(20);
+
+ setReadOnly(true);
+ };
+
+ commandFrame.add(tCurrentInput);
+
+ t.getManager().addEventListener("changeSelection", function(e) {
+ tCurrentInput.setValue(e.getData()[0]._labelObject.getHtml());
+ });
+
+
+
+ var tDoubleClick = new qx.ui.form.CheckBox("Use double click?");
+
+ with(tDoubleClick) {
+ setTop(60);
+ setLeft(0);
+ };
+
+ commandFrame.add(tDoubleClick);
+
+ tDoubleClick.addEventListener("changeChecked", function(e) { t.setUseDoubleClick(e.getData()); });
+
+
+
+
+ var tTreeLines = new qx.ui.form.CheckBox("Use tree lines?");
+
+ with(tTreeLines) {
+ setTop(80);
+ setLeft(0);
+ setChecked(true);
+ };
+
+ commandFrame.add(tTreeLines);
+
+ tTreeLines.addEventListener("changeChecked", function(e) { t.setUseTreeLines(e.getData()); });
+
+
+
+
+ var tHideNode = new qx.ui.form.CheckBox("Hide the root node?");
+
+ with(tHideNode) {
+ setTop(100);
+ setLeft(0);
+ setChecked(false);
+ };
+
+ commandFrame.add(tHideNode);
+
+ tHideNode.addEventListener("changeChecked", function(e) { t.setHideNode(e.getData()); });
+
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/TreeFullControl_3.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/TreeFullControl_3.html
new file mode 100644
index 0000000000..4dc1894826
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/TreeFullControl_3.html
@@ -0,0 +1,298 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Shows a tree, with user-defined icons for some nodes. This tests
+ listening for tree events. A separate alert is generated upon opening a
+ folder that has contents; when opening a folder that has no contents; and
+ closing a folder.</p><p>We also demonstrate changing the default value of
+ 'allowShowPlusMinusSymbol' so that all folders initially have a plus/minus
+ symbol. Then, upon opening an empty folder, we remove that
+ icon.</p><p>Lastly, we demonstrate in the alert presented by tree events,
+ use of the getHierarchy() method to obtain a full "path" for a tree
+ node.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ /*
+ * Reset the default of always showing the plus/minus symbol. The
+ * default is 'false'. We want to always display it for each folder
+ * (and then stop displaying it if we determine upon open that there are
+ * no contents).
+ *
+ * The changeProperty() function assumes that it is being called
+ * shortly after defineClass() is called. We therefore need to kludge
+ * qx.Proto to point to the right place.
+ *
+ * TODO: There should be a mechanism to change a property attribute
+ * without having to jump through these hoops.
+ */
+ var constructor = qx.OO.classes["qx.ui.treefullcontrol.TreeFolder"];
+ qx.Proto = constructor.prototype;
+ qx.OO.changeProperty({ name : "alwaysShowPlusMinusSymbol", type : "boolean", defaultValue : true });
+
+
+ var trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Root");
+ var t = new qx.ui.treefullcontrol.Tree(trs);
+
+ /*
+ * All subtrees will use this root node's event listeners. Create event
+ * listeners for each of the possible events.
+ */
+ t.addEventListener("treeOpenWithContent", function(e) {
+ alert('treeOpenWithContent ' + e.getData().getHierarchy(new Array()).join("/"));
+ });
+
+ t.addEventListener("treeClose", function(e) {
+ alert('treeClose ' + e.getData().getHierarchy(new Array()).join("/"));
+ });
+
+ /*
+ * We handle opening an empty folder specially. We demonstrate how to
+ * disable the plus/minus sign once we've determined there's nothing in
+ * it. This feature might be used to dynamically retrieve the contents
+ * of the folder, and if nothing is available, indicate it by removing
+ * the plus/minus sign.
+ */
+ t.addEventListener("treeOpenWhileEmpty", function(e) {
+ alert('treeOpenWhileEmpty ' + e.getData().getHierarchy(new Array()).join("/"));
+ e.getData().setAlwaysShowPlusMinusSymbol(false);
+ });
+
+ with(t)
+ {
+ setBackgroundColor(255);
+ setBorder(qx.renderer.border.BorderPresets.getInstance().inset);
+ setOverflow("scrollY");
+
+ setHeight(null);
+ setTop(48);
+ setLeft(20);
+ setWidth(200);
+ setBottom(48);
+ };
+
+ qx.ui.core.ClientDocument.getInstance().add(t);
+ // One icon for selected and one for unselected states
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Desktop", "icon/16/places/user-desktop.png", "icon/16/apps/accessories-dictionary.png");
+ var te1 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ t.add(te1);
+
+ desktop = te1;
+
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Files");
+ var te1_1 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Workspace");
+ var te1_2 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Network");
+ var te1_3 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Trash");
+ var te1_4 = new qx.ui.treefullcontrol.TreeFolder(trs);
+
+ te1.add(te1_1, te1_2, te1_3, te1_4);
+
+ // One icon specified, and used for both selected unselected states
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Windows (C:)", "icon/16/devices/drive-harddisk.png");
+ var te1_2_1 = new qx.ui.treefullcontrol.TreeFile(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Documents (D:)", "icon/16/devices/drive-harddisk.png");
+ var te1_2_2 = new qx.ui.treefullcontrol.TreeFile(trs);
+
+ te1_2.add(te1_2_1, te1_2_2);
+
+ arbeitsplatz = te1_2;
+
+
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Inbox");
+ var te2 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ posteingang = te2;
+
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Presets");
+ var te2_1 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Sent");
+ var te2_2 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Trash", "icon/16/places/user-trash.png");
+ var te2_3 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Data");
+ var te2_4 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Edit");
+ var te2_5 = new qx.ui.treefullcontrol.TreeFolder(trs);
+
+ editieren = te2_5;
+
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Chat");
+ var te2_5_1 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Pustefix");
+ var te2_5_2 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("TINC");
+ var te2_5_3 = new qx.ui.treefullcontrol.TreeFolder(trs);
+
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Announce");
+ var te2_5_3_1 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Devel");
+ var te2_5_3_2 = new qx.ui.treefullcontrol.TreeFolder(trs);
+
+ te2_5_3.add(te2_5_3_1, te2_5_3_2);
+
+ te2_5.add(te2_5_1, te2_5_2, te2_5_3);
+
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Lists");
+ var te2_6 = new qx.ui.treefullcontrol.TreeFolder(trs);
+
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Relations");
+ var te2_6_1 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Company");
+ var te2_6_2 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Questions");
+ var te2_6_3 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Internal");
+ var te2_6_4 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Products");
+ var te2_6_5 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Press");
+ var te2_6_6 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Development");
+ var te2_6_7 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Competition");
+ var te2_6_8 = new qx.ui.treefullcontrol.TreeFolder(trs);
+
+ te2_6.add(te2_6_1, te2_6_2, te2_6_3, te2_6_4, te2_6_5, te2_6_6, te2_6_7, te2_6_8);
+
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Personal");
+ var te2_7 = new qx.ui.treefullcontrol.TreeFolder(trs);
+
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Bugs");
+ var te2_7_1 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Family");
+ var te2_7_2 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Projects");
+ var te2_7_3 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Holiday");
+ var te2_7_4 = new qx.ui.treefullcontrol.TreeFolder(trs);
+
+ te2_7.add(te2_7_1, te2_7_2, te2_7_3, te2_7_4);
+
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Big");
+ var te2_8 = new qx.ui.treefullcontrol.TreeFolder(trs);
+
+ for (var i=0;i<50; i++) {
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Item " + i);
+ te2_8.add(new qx.ui.treefullcontrol.TreeFolder(trs));
+ };
+
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Spam");
+ var te2_9 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ spam = te2_9;
+
+ te2.add(te2_1, te2_2, te2_3, te2_4, te2_5, te2_6, te2_7, te2_8, te2_9);
+
+ t.add(te2);
+ qx.ui.core.ClientDocument.getInstance().add(t);
+
+
+
+
+
+
+ var commandFrame = new qx.ui.groupbox.GroupBox("Control");
+
+ with(commandFrame)
+ {
+ setTop(48);
+ setLeft(250);
+
+ setWidth("auto");
+ setHeight("auto");
+ };
+
+ qx.ui.core.ClientDocument.getInstance().add(commandFrame);
+
+
+
+
+ var tCurrentLabel = new qx.ui.basic.Atom("Current Folder: ");
+
+ with(tCurrentLabel)
+ {
+ setLeft(0);
+ setTop(0);
+ };
+
+ commandFrame.add(tCurrentLabel);
+
+
+
+ var tCurrentInput = new qx.ui.form.TextField;
+
+ with(tCurrentInput)
+ {
+ setLeft(0);
+ setRight(0);
+ setTop(20);
+
+ setReadOnly(true);
+ };
+
+ commandFrame.add(tCurrentInput);
+
+ t.getManager().addEventListener("changeSelection", function(e) {
+ tCurrentInput.setValue(e.getData()[0]._labelObject.getHtml());
+ });
+
+
+
+ var tDoubleClick = new qx.ui.form.CheckBox("Use double click?");
+
+ with(tDoubleClick) {
+ setTop(60);
+ setLeft(0);
+ };
+
+ commandFrame.add(tDoubleClick);
+
+ tDoubleClick.addEventListener("changeChecked", function(e) { t.setUseDoubleClick(e.getData()); });
+
+
+
+
+ var tTreeLines = new qx.ui.form.CheckBox("Use tree lines?");
+
+ with(tTreeLines) {
+ setTop(80);
+ setLeft(0);
+ setChecked(true);
+ };
+
+ commandFrame.add(tTreeLines);
+
+ tTreeLines.addEventListener("changeChecked", function(e) { t.setUseTreeLines(e.getData()); });
+
+
+ var tHideNode = new qx.ui.form.CheckBox("Hide the root node?");
+
+ with(tHideNode) {
+ setTop(100);
+ setLeft(0);
+ setChecked(false);
+ };
+
+ commandFrame.add(tHideNode);
+
+ tHideNode.addEventListener("changeChecked", function(e) { t.setHideNode(e.getData()); });
+
+
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/TreeFullControl_4.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/TreeFullControl_4.html
new file mode 100644
index 0000000000..5367c244cd
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/TreeFullControl_4.html
@@ -0,0 +1,384 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Shows a tree and allows playing with the settings of the Tree
+ properties <i>hideNode</i> and <i>rootOpenClose</i>. Also demonstrates
+ manipulating display (or not) of tree lines at specific indentation
+ levels, using the <i>excludeSpecificTreeLines</i> property.</p>
+
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Root");
+ var t = new qx.ui.treefullcontrol.Tree(trs);
+
+ with(t)
+ {
+ setBackgroundColor(255);
+ setBorder(qx.renderer.border.BorderPresets.getInstance().inset);
+ setOverflow("scrollY");
+
+ setHeight(null);
+ setTop(48);
+ setLeft(20);
+ setWidth(200);
+ setBottom(48);
+ };
+
+ qx.ui.core.ClientDocument.getInstance().add(t);
+ // One icon for selected and one for unselected states
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Desktop", "icon/16/places/user-desktop.png", "icon/16/apps/accessories-dictionary.png");
+ var te1 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ t.add(te1);
+
+ desktop = te1;
+
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Files");
+ var te1_1 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Workspace");
+ var te1_2 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Network");
+ var te1_3 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Trash");
+ var te1_4 = new qx.ui.treefullcontrol.TreeFolder(trs);
+
+ te1.add(te1_1, te1_2, te1_3, te1_4);
+
+ // One icon specified, and used for both selected unselected states
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Windows (C:)", "icon/16/devices/drive-harddisk.png");
+ var te1_2_1 = new qx.ui.treefullcontrol.TreeFile(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Documents (D:)", "icon/16/devices/drive-harddisk.png");
+ var te1_2_2 = new qx.ui.treefullcontrol.TreeFile(trs);
+
+ te1_2.add(te1_2_1, te1_2_2);
+
+ arbeitsplatz = te1_2;
+
+
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Inbox");
+ var te2 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ posteingang = te2;
+
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Presets");
+ var te2_1 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Sent");
+ var te2_2 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Trash", "icon/16/places/user-trash.png");
+ var te2_3 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Data");
+ var te2_4 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Edit");
+ var te2_5 = new qx.ui.treefullcontrol.TreeFolder(trs);
+
+ editieren = te2_5;
+
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Chat");
+ var te2_5_1 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Pustefix");
+ var te2_5_2 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("TINC");
+ var te2_5_3 = new qx.ui.treefullcontrol.TreeFolder(trs);
+
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Announce");
+ var te2_5_3_1 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Devel");
+ var te2_5_3_2 = new qx.ui.treefullcontrol.TreeFolder(trs);
+
+ te2_5_3.add(te2_5_3_1, te2_5_3_2);
+
+ te2_5.add(te2_5_1, te2_5_2, te2_5_3);
+
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Lists");
+ var te2_6 = new qx.ui.treefullcontrol.TreeFolder(trs);
+
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Relations");
+ var te2_6_1 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Company");
+ var te2_6_2 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Questions");
+ var te2_6_3 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Internal");
+ var te2_6_4 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Products");
+ var te2_6_5 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Press");
+ var te2_6_6 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Development");
+ var te2_6_7 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Competition");
+ var te2_6_8 = new qx.ui.treefullcontrol.TreeFolder(trs);
+
+ te2_6.add(te2_6_1, te2_6_2, te2_6_3, te2_6_4, te2_6_5, te2_6_6, te2_6_7, te2_6_8);
+
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Personal");
+ var te2_7 = new qx.ui.treefullcontrol.TreeFolder(trs);
+
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Bugs");
+ var te2_7_1 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Family");
+ var te2_7_2 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Projects");
+ var te2_7_3 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Holiday");
+ var te2_7_4 = new qx.ui.treefullcontrol.TreeFolder(trs);
+
+ te2_7.add(te2_7_1, te2_7_2, te2_7_3, te2_7_4);
+
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Big");
+ var te2_8 = new qx.ui.treefullcontrol.TreeFolder(trs);
+
+ for (var i=0;i<50; i++) {
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Item " + i);
+ te2_8.add(new qx.ui.treefullcontrol.TreeFolder(trs));
+ };
+
+ trs = qx.ui.treefullcontrol.TreeRowStructure.getInstance().standard("Spam");
+ var te2_9 = new qx.ui.treefullcontrol.TreeFolder(trs);
+ spam = te2_9;
+
+ te2.add(te2_1, te2_2, te2_3, te2_4, te2_5, te2_6, te2_7, te2_8, te2_9);
+
+ t.add(te2);
+ qx.ui.core.ClientDocument.getInstance().add(t);
+
+
+
+
+
+
+ var commandFrame = new qx.ui.groupbox.GroupBox("Control");
+
+ with(commandFrame)
+ {
+ setTop(48);
+ setLeft(250);
+
+ setWidth("auto");
+ setHeight("auto");
+ };
+
+ qx.ui.core.ClientDocument.getInstance().add(commandFrame);
+
+
+
+
+ var tCurrentLabel = new qx.ui.basic.Atom("Current Folder: ");
+
+ with(tCurrentLabel)
+ {
+ setLeft(0);
+ setTop(0);
+ };
+
+ commandFrame.add(tCurrentLabel);
+
+
+
+ var tCurrentInput = new qx.ui.form.TextField;
+
+ with(tCurrentInput)
+ {
+ setLeft(0);
+ setRight(0);
+ setTop(20);
+
+ setReadOnly(true);
+ };
+
+ commandFrame.add(tCurrentInput);
+
+ t.getManager().addEventListener("changeSelection", function(e) {
+ tCurrentInput.setValue(e.getData()[0]._labelObject.getHtml());
+ });
+
+
+
+ var tDoubleClick = new qx.ui.form.CheckBox("Use double click?");
+
+ with(tDoubleClick) {
+ setTop(60);
+ setLeft(0);
+ };
+
+ commandFrame.add(tDoubleClick);
+
+ tDoubleClick.addEventListener("changeChecked", function(e) { t.setUseDoubleClick(e.getData()); });
+
+
+
+
+ var tTreeLines = new qx.ui.form.CheckBox("Use tree lines?");
+
+ with(tTreeLines) {
+ setTop(80);
+ setLeft(0);
+ setChecked(true);
+ };
+
+ commandFrame.add(tTreeLines);
+
+ tTreeLines.addEventListener("changeChecked", function(e) { t.setUseTreeLines(e.getData()); });
+
+
+ var tHideNode = new qx.ui.form.CheckBox("Hide the root node?");
+
+ with(tHideNode) {
+ setTop(100);
+ setLeft(0);
+ setChecked(false);
+ };
+
+ commandFrame.add(tHideNode);
+
+ tHideNode.addEventListener("changeChecked", function(e) { t.setHideNode(e.getData()); });
+
+ var tIncludeRootOpenClose =
+ new qx.ui.form.CheckBox("Include root open/close button?");
+
+ with(tIncludeRootOpenClose) {
+ setTop(120);
+ setLeft(0);
+ setChecked(true);
+ };
+
+ commandFrame.add(tIncludeRootOpenClose);
+
+ tIncludeRootOpenClose.addEventListener("changeChecked", function(e) { t.setRootOpenClose(e.getData()); });
+
+ tExcludeTreeLines0 =
+ new qx.ui.form.CheckBox("Exclude tree lines at level 0?");
+
+ with(tExcludeTreeLines0) {
+ setTop(140);
+ setLeft(0);
+ setChecked(false);
+ };
+
+ commandFrame.add(tExcludeTreeLines0);
+
+ tExcludeTreeLines0.addEventListener(
+ "changeChecked",
+ function(e)
+ {
+ var excl = t.getExcludeSpecificTreeLines();
+ if (e.getData()) {
+ excl[0] = true;
+ } else {
+ delete(excl[0]);
+ }
+ t.setExcludeSpecificTreeLines(excl);
+ });
+
+ tExcludeTreeLines1 =
+ new qx.ui.form.CheckBox("Exclude tree lines at level 1?");
+
+ with(tExcludeTreeLines1) {
+ setTop(160);
+ setLeft(0);
+ setChecked(false);
+ };
+
+ commandFrame.add(tExcludeTreeLines1);
+
+ tExcludeTreeLines1.addEventListener(
+ "changeChecked",
+ function(e)
+ {
+ var excl = t.getExcludeSpecificTreeLines();
+ if (e.getData()) {
+ excl[1] = true;
+ } else {
+ delete(excl[1]);
+ }
+ t.setExcludeSpecificTreeLines(excl);
+ });
+
+ tExcludeTreeLines2 =
+ new qx.ui.form.CheckBox("Exclude tree lines at level 2?");
+
+ with(tExcludeTreeLines2) {
+ setTop(180);
+ setLeft(0);
+ setChecked(false);
+ };
+
+ commandFrame.add(tExcludeTreeLines2);
+
+ tExcludeTreeLines2.addEventListener(
+ "changeChecked",
+ function(e)
+ {
+ var excl = t.getExcludeSpecificTreeLines();
+ if (e.getData()) {
+ excl[2] = true;
+ } else {
+ delete(excl[2]);
+ }
+ t.setExcludeSpecificTreeLines(excl);
+ });
+
+ tExcludeTreeLines3 =
+ new qx.ui.form.CheckBox("Exclude tree lines at level 3?");
+
+ with(tExcludeTreeLines3) {
+ setTop(200);
+ setLeft(0);
+ setChecked(false);
+ };
+
+ commandFrame.add(tExcludeTreeLines3);
+
+ tExcludeTreeLines3.addEventListener(
+ "changeChecked",
+ function(e)
+ {
+ var excl = t.getExcludeSpecificTreeLines();
+ if (e.getData()) {
+ excl[3] = true;
+ } else {
+ delete(excl[3]);
+ }
+ t.setExcludeSpecificTreeLines(excl);
+ });
+
+ tExcludeTreeLines4 =
+ new qx.ui.form.CheckBox("Exclude tree lines at level 4?");
+
+ with(tExcludeTreeLines4) {
+ setTop(220);
+ setLeft(0);
+ setChecked(false);
+ };
+
+ commandFrame.add(tExcludeTreeLines4);
+
+ tExcludeTreeLines4.addEventListener(
+ "changeChecked",
+ function(e)
+ {
+ var excl = t.getExcludeSpecificTreeLines();
+ if (e.getData()) {
+ excl[4] = true;
+ } else {
+ delete(excl[4]);
+ }
+ t.setExcludeSpecificTreeLines(excl);
+ });
+
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Tree_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Tree_1.html
new file mode 100644
index 0000000000..295231bf42
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Tree_1.html
@@ -0,0 +1,191 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Shows a tree, with user-defined icons for some nodes.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var t = new qx.ui.tree.Tree("Root");
+
+ with(t)
+ {
+ setBackgroundColor(255);
+ setBorder(qx.renderer.border.BorderPresets.getInstance().inset);
+ setOverflow("scrollY");
+
+ setHeight(null);
+ setTop(48);
+ setLeft(20);
+ setWidth(200);
+ setBottom(48);
+ };
+
+ qx.ui.core.ClientDocument.getInstance().add(t);
+ // One icon for selected and one for unselected states
+ var te1 = new qx.ui.tree.TreeFolder("Desktop", "icon/16/places/user-desktop.png", "icon/16/apps/accessories-dictionary.png");
+ t.add(te1);
+
+ var te1_1 = new qx.ui.tree.TreeFolder("Files");
+ var te1_2 = new qx.ui.tree.TreeFolder("Workspace");
+ var te1_3 = new qx.ui.tree.TreeFolder("Network");
+ var te1_4 = new qx.ui.tree.TreeFolder("Trash");
+
+ te1.add(te1_1, te1_2, te1_3, te1_4);
+
+ // One icon specified, and used for both selected unselected states
+ var te1_2_1 = new qx.ui.tree.TreeFile("Windows (C:)", "icon/16/devices/drive-harddisk.png");
+ var te1_2_2 = new qx.ui.tree.TreeFile("Documents (D:)", "icon/16/devices/drive-harddisk.png");
+
+ te1_2.add(te1_2_1, te1_2_2);
+
+
+ var te2 = new qx.ui.tree.TreeFolder("Inbox");
+
+ var te2_1 = new qx.ui.tree.TreeFolder("Presets");
+ var te2_2 = new qx.ui.tree.TreeFolder("Sent");
+ var te2_3 = new qx.ui.tree.TreeFolder("Trash", "icon/16/places/user-trash.png");
+ var te2_4 = new qx.ui.tree.TreeFolder("Data");
+ var te2_5 = new qx.ui.tree.TreeFolder("Edit");
+
+ var te2_5_1 = new qx.ui.tree.TreeFolder("Chat");
+ var te2_5_2 = new qx.ui.tree.TreeFolder("Pustefix");
+ var te2_5_3 = new qx.ui.tree.TreeFolder("TINC");
+
+ var te2_5_3_1 = new qx.ui.tree.TreeFolder("Announce");
+ var te2_5_3_2 = new qx.ui.tree.TreeFolder("Devel");
+
+ te2_5_3.add(te2_5_3_1, te2_5_3_2);
+
+ te2_5.add(te2_5_1, te2_5_2, te2_5_3);
+
+ var te2_6 = new qx.ui.tree.TreeFolder("Lists");
+
+ var te2_6_1 = new qx.ui.tree.TreeFolder("Relations");
+ var te2_6_2 = new qx.ui.tree.TreeFolder("Company");
+ var te2_6_3 = new qx.ui.tree.TreeFolder("Questions");
+ var te2_6_4 = new qx.ui.tree.TreeFolder("Internal");
+ var te2_6_5 = new qx.ui.tree.TreeFolder("Products");
+ var te2_6_6 = new qx.ui.tree.TreeFolder("Press");
+ var te2_6_7 = new qx.ui.tree.TreeFolder("Development");
+ var te2_6_8 = new qx.ui.tree.TreeFolder("Competition");
+
+ te2_6.add(te2_6_1, te2_6_2, te2_6_3, te2_6_4, te2_6_5, te2_6_6, te2_6_7, te2_6_8);
+
+ var te2_7 = new qx.ui.tree.TreeFolder("Personal");
+
+ var te2_7_1 = new qx.ui.tree.TreeFolder("Bugs");
+ var te2_7_2 = new qx.ui.tree.TreeFolder("Family");
+ var te2_7_3 = new qx.ui.tree.TreeFolder("Projects");
+ var te2_7_4 = new qx.ui.tree.TreeFolder("Holiday");
+
+ te2_7.add(te2_7_1, te2_7_2, te2_7_3, te2_7_4);
+
+ var te2_8 = new qx.ui.tree.TreeFolder("Big");
+
+ for (var i=0;i<50; i++) {
+ te2_8.add(new qx.ui.tree.TreeFolder("Item " + i));
+ };
+
+ var te2_9 = new qx.ui.tree.TreeFolder("Spam");
+
+ te2.add(te2_1, te2_2, te2_3, te2_4, te2_5, te2_6, te2_7, te2_8, te2_9);
+
+ t.add(te2);
+ qx.ui.core.ClientDocument.getInstance().add(t);
+
+
+
+
+
+
+ var commandFrame = new qx.ui.groupbox.GroupBox("Control");
+
+ with(commandFrame)
+ {
+ setTop(48);
+ setLeft(250);
+
+ setWidth("auto");
+ setHeight("auto");
+ };
+
+ qx.ui.core.ClientDocument.getInstance().add(commandFrame);
+
+
+
+
+ var tCurrentLabel = new qx.ui.basic.Atom("Current Folder: ");
+
+ with(tCurrentLabel)
+ {
+ setLeft(0);
+ setTop(0);
+ };
+
+ commandFrame.add(tCurrentLabel);
+
+
+
+ var tCurrentInput = new qx.ui.form.TextField;
+
+ with(tCurrentInput)
+ {
+ setLeft(0);
+ setRight(0);
+ setTop(20);
+
+ setReadOnly(true);
+ };
+
+ commandFrame.add(tCurrentInput);
+
+ t.getManager().addEventListener("changeSelection", function(e) {
+ tCurrentInput.setValue(e.getData()[0]._labelObject.getHtml());
+ });
+
+
+
+ var tDoubleClick = new qx.ui.form.CheckBox("Use double click?");
+
+ with(tDoubleClick) {
+ setTop(60);
+ setLeft(0);
+ };
+
+ commandFrame.add(tDoubleClick);
+
+ tDoubleClick.addEventListener("changeChecked", function(e) { t.setUseDoubleClick(e.getData()); });
+
+
+
+
+ var tTreeLines = new qx.ui.form.CheckBox("Use tree lines?");
+
+ with(tTreeLines) {
+ setTop(80);
+ setLeft(0);
+ setChecked(true);
+ };
+
+ commandFrame.add(tTreeLines);
+
+ tTreeLines.addEventListener("changeChecked", function(e) { t.setUseTreeLines(e.getData()); });
+
+
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Window_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Window_1.html
new file mode 100644
index 0000000000..54eb402afa
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/Window_1.html
@@ -0,0 +1,308 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>This is the qx.ui.window.Window widget. These should emulate the default look and behaviour of the application windows running under Microsoft Windows(TM).</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var w1 = new qx.ui.window.Window("First Window", "icon/16/apps/preferences-desktop-multimedia.png");
+ w1.setSpace(20, 400, 48, 250);
+ d.add(w1);
+
+ var w2 = new qx.ui.window.Window("Second Window", "icon/16/actions/format-color.png");
+ w2.setSpace(250, "auto", 120, "auto");
+ d.add(w2);
+
+ var w3 = new qx.ui.window.Window("Third Window", "icon/16/categories/applications-internet.png");
+ w3.setSpace(100, 300, 200, 300);
+ w3.setMaxWidth(450);
+ w3.setMaxHeight(400);
+ d.add(w3);
+
+ var wm1 = new qx.ui.window.Window("First Modal Dialog");
+ wm1.setSpace(150, 200, 150, 200);
+ wm1.setModal(true);
+ d.add(wm1);
+
+ var wm2 = new qx.ui.window.Window("Second Modal Dialog");
+ wm2.setSpace(100, 200, 100, 150);
+ wm2.setModal(true);
+ wm2.setShowClose(false);
+ d.add(wm2);
+
+
+
+
+ var a1 = new qx.ui.basic.Atom("Welcome to your first own Window.<br/>Have fun!", "icon/32/apps/office-organizer.png");
+ a1.set({ top: 4, left: 4 });
+ w1.add(a1);
+
+
+
+
+ var tf1 = new qx.ui.pageview.tabview.TabView;
+ tf1.set({ left: 10, top: 52, right: 10, bottom: 10 });
+
+ var t1_1 = new qx.ui.pageview.tabview.Button("Explore");
+ var t1_2 = new qx.ui.pageview.tabview.Button("Internet");
+ var t1_3 = new qx.ui.pageview.tabview.Button("Future");
+
+ t1_1.setChecked(true);
+
+ tf1.getBar().add(t1_1, t1_2, t1_3);
+
+ var p1_1 = new qx.ui.pageview.tabview.Page(t1_1);
+ var p1_2 = new qx.ui.pageview.tabview.Page(t1_2);
+ var p1_3 = new qx.ui.pageview.tabview.Page(t1_3);
+
+ tf1.getPane().add(p1_1, p1_2, p1_3);
+
+ w1.add(tf1);
+
+
+
+ var at1 = new qx.ui.basic.Atom("Your second window", "icon/22/actions/edit-find.png");
+ at1.setLocation(8, 8);
+ w2.add(at1);
+
+
+
+
+ var btn1 = new qx.ui.form.Button("Open Modal Dialog 1", "icon/16/apps/system-software-update.png");
+ btn1.setLocation(4, 4);
+ w3.add(btn1);
+
+ btn1.addEventListener("execute", function(e) {
+ wm1.open();
+ });
+
+
+ var btn2 = new qx.ui.form.Button("Open Modal Dialog 2", "icon/16/apps/system-software-update.png");
+ btn2.setLocation(4, 4);
+ wm1.add(btn2);
+
+ btn2.addEventListener("execute", function(e) {
+ wm2.open();
+ });
+
+
+ var chkm1 = new qx.ui.form.CheckBox("Modal", null, null, true);
+ chkm1.setLocation(4, 50);
+ wm1.add(chkm1);
+
+ chkm1.addEventListener("changeChecked", function(e) {
+ wm1.setModal(e.getData());
+ });
+
+
+
+ var fs1 = new qx.ui.groupbox.GroupBox("Settings");
+ fs1.setLocation(4, 40);
+ fs1.setRight(4);
+ fs1.setBottom(4);
+
+
+ var chk1 = new qx.ui.form.CheckBox("Show Icon");
+ chk1.setLocation(0, 0);
+ chk1.setChecked(true);
+ chk1.addEventListener("changeChecked", function(e) {
+ w2.setShowIcon(e.getData());
+ });
+
+ var chk2 = new qx.ui.form.CheckBox("Show Caption");
+ chk2.setLocation(0, 20);
+ chk2.setChecked(true);
+ chk2.addEventListener("changeChecked", function(e) {
+ w2.setShowCaption(e.getData());
+ });
+
+
+
+ var chk3 = new qx.ui.form.CheckBox("Resizeable");
+ chk3.setLocation(0, 50);
+ chk3.setChecked(true);
+ chk3.addEventListener("changeChecked", function(e) {
+ w2.setResizeable(e.getData());
+ });
+
+ var chk4 = new qx.ui.form.CheckBox("Moveable");
+ chk4.setLocation(0, 70);
+ chk4.setChecked(true);
+ chk4.addEventListener("changeChecked", function(e) {
+ w2.setMoveable(e.getData());
+ });
+
+
+
+ var chk5 = new qx.ui.form.CheckBox("Show Close");
+ chk5.setLocation(140, 0);
+ chk5.setChecked(true);
+ chk5.addEventListener("changeChecked", function(e) {
+ w2.setShowClose(e.getData());
+ });
+
+ var chk6 = new qx.ui.form.CheckBox("Show Maximize/Restore");
+ chk6.setLocation(140, 20);
+ chk6.setChecked(true);
+ chk6.addEventListener("changeChecked", function(e) {
+ w2.setShowMaximize(e.getData());
+ });
+
+ var chk7 = new qx.ui.form.CheckBox("Show Minimize");
+ chk7.setLocation(140, 40);
+ chk7.setChecked(true);
+ chk7.addEventListener("changeChecked", function(e) {
+ w2.setShowMinimize(e.getData());
+ });
+
+
+
+ var chk8 = new qx.ui.form.CheckBox("Allow Close");
+ chk8.setLocation(140, 70);
+ chk8.setChecked(true);
+ chk8.addEventListener("changeChecked", function(e) {
+ w2.setAllowClose(e.getData());
+ });
+
+ var chk9 = new qx.ui.form.CheckBox("Allow Maximize");
+ chk9.setLocation(140, 90);
+ chk9.setChecked(true);
+ chk9.addEventListener("changeChecked", function(e) {
+ w2.setAllowMaximize(e.getData());
+ });
+
+ var chk10 = new qx.ui.form.CheckBox("Allow Minimize");
+ chk10.setLocation(140, 110);
+ chk10.setChecked(true);
+ chk10.addEventListener("changeChecked", function(e) {
+ w2.setAllowMinimize(e.getData());
+ });
+
+
+
+
+ var l1 = new qx.ui.basic.Atom("Move Method", "icon/16/actions/system-run.png");
+ l1.setLocation(0, 100);
+
+ var rb1 = new qx.ui.form.RadioButton("Frame", "frame");
+ rb1.setLocation(0, 120);
+
+ var rb2 = new qx.ui.form.RadioButton("Opaque", "opaque");
+ rb2.setLocation(0, 140);
+ rb2.setChecked(true);
+
+ var rb3 = new qx.ui.form.RadioButton("Translucent", "translucent");
+ rb3.setLocation(0, 160);
+
+ var rbm1 = new qx.manager.selection.RadioManager("move", [rb1, rb2, rb3]);
+
+ rbm1.addEventListener("changeSelected", function(e) {
+ w2.setMoveMethod(e.getData().getValue());
+ });
+
+
+
+
+ var l2 = new qx.ui.basic.Atom("Resize Method", "icon/16/actions/system-run.png");
+ l2.setLocation(0, 190);
+
+ var rb4 = new qx.ui.form.RadioButton("Frame", "frame");
+ rb4.setLocation(0, 210);
+ rb4.setChecked(true);
+
+ var rb5 = new qx.ui.form.RadioButton("Opaque", "opaque");
+ rb5.setLocation(0, 230);
+
+ var rb6 = new qx.ui.form.RadioButton("Lazy Opaque", "lazyopaque");
+ rb6.setLocation(0, 250);
+
+ var rb7 = new qx.ui.form.RadioButton("Translucent", "translucent");
+ rb7.setLocation(0, 270);
+
+ var rbm2 = new qx.manager.selection.RadioManager("resize", [rb4, rb5, rb6, rb7]);
+
+ rbm2.addEventListener("changeSelected", function(e) {
+ w2.setResizeMethod(e.getData().getValue());
+ });
+
+
+
+
+ var chk11 = new qx.ui.form.CheckBox("Show Statusbar");
+ chk11.setLocation(140, 140);
+ chk11.setChecked(false);
+ chk11.addEventListener("changeChecked", function(e) {
+ w2.setShowStatusbar(e.getData());
+ });
+
+
+
+
+ var btnpack = new qx.ui.form.Button("Pack Window", "icon/16/devices/media-optical.png");
+ btnpack.setLocation(140, 170);
+ btnpack.addEventListener("execute", function(e) {
+ w2.pack();
+ });
+
+
+ fs1.add(chk1, chk2, chk3, chk4, chk5, chk6, chk7, chk8, chk9, chk10, l1, rb1, rb2, rb3, l2, rb4, rb5, rb6, rb7, chk11, btnpack);
+ w2.add(fs1);
+
+
+ var icon1 = new qx.ui.basic.Image("icon/32/status/dialog-error.png");
+ var warn1 = new qx.ui.basic.Label("Do you want to<br/>fly to Rio?");
+
+ icon1.setTop(10);
+ icon1.setLeft(10);
+
+ warn1.setTop(10);
+ warn1.setLeft(48);
+
+ var btn3 = new qx.ui.form.Button("Yes", "icon/16/actions/dialog-ok.png");
+ var btn4 = new qx.ui.form.Button("No", "icon/16/actions/dialog-cancel.png");
+
+ btn3.addEventListener("execute", function(e) {
+ alert("Thank you!");
+ wm2.close();
+ });
+
+ btn4.addEventListener("execute", function(e) {
+ alert("Sorry, please click 'Yes'!");
+ });
+
+ btn3.set({ bottom : 10, right : 10 });
+ btn4.set({ bottom : 10, left : 10 });
+
+ wm2.add(btn3, btn4, icon1, warn1);
+
+
+
+ // Icon & Color Themes
+ //qx.manager.object.ImageManager.getInstance().createThemeList(w3, 20, 248);
+ qx.manager.object.ColorManager.getInstance().createThemeList(w3, 4, 58);
+
+
+
+
+ w1.open();
+ w2.open();
+ w3.open();
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/image/flash/color/file1.swf b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/image/flash/color/file1.swf
new file mode 100644
index 0000000000..2e6d69a3fd
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/image/flash/color/file1.swf
Binary files differ
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/image/flash/color/file10.swf b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/image/flash/color/file10.swf
new file mode 100644
index 0000000000..eeafa9a8f3
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/image/flash/color/file10.swf
Binary files differ
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/image/flash/color/file2.swf b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/image/flash/color/file2.swf
new file mode 100644
index 0000000000..51c8f0ff76
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/image/flash/color/file2.swf
Binary files differ
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/image/flash/color/file3.swf b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/image/flash/color/file3.swf
new file mode 100644
index 0000000000..0b6b56be85
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/image/flash/color/file3.swf
Binary files differ
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/image/flash/color/file4.swf b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/image/flash/color/file4.swf
new file mode 100644
index 0000000000..746baa8cd9
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/image/flash/color/file4.swf
Binary files differ
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/image/flash/color/file5.swf b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/image/flash/color/file5.swf
new file mode 100644
index 0000000000..a3333e1c31
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/image/flash/color/file5.swf
Binary files differ
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/image/flash/color/file6.swf b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/image/flash/color/file6.swf
new file mode 100644
index 0000000000..2cad550081
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/image/flash/color/file6.swf
Binary files differ
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/image/flash/color/file7.swf b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/image/flash/color/file7.swf
new file mode 100644
index 0000000000..b5f4eb4ddf
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/image/flash/color/file7.swf
Binary files differ
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/image/flash/color/file8.swf b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/image/flash/color/file8.swf
new file mode 100644
index 0000000000..54c9a11edc
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/image/flash/color/file8.swf
Binary files differ
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/image/flash/color/file9.swf b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/image/flash/color/file9.swf
new file mode 100644
index 0000000000..cc41ff1c10
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/image/flash/color/file9.swf
Binary files differ
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/image/flash/fo_tester.fla b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/image/flash/fo_tester.fla
new file mode 100644
index 0000000000..afd4bb6134
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/image/flash/fo_tester.fla
Binary files differ
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/image/flash/fo_tester.swf b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/image/flash/fo_tester.swf
new file mode 100644
index 0000000000..8e0b966bca
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/image/flash/fo_tester.swf
Binary files differ
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/index.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/index.html
new file mode 100644
index 0000000000..ac16317e80
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/example/index.html
@@ -0,0 +1,8 @@
+<html>
+ <head>
+ <script type="text/javascript">window.location.href="Atom_1.html";</script>
+ </head>
+ <body>
+ <a href="Atom1.html">Continue...</a>
+ </body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/ArrayCreate_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/ArrayCreate_1.html
new file mode 100644
index 0000000000..17b7b62a19
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/ArrayCreate_1.html
@@ -0,0 +1,57 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Tests for empty Array creation performance</p>
+ <ol>
+ <li>Using "[]"</li>
+ <li>Using "new Array"</li>
+ <li>Using "new Array()"</li>
+ </ol>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ function ArrayCreate1(vLoops)
+ {
+ var foo;
+
+ for (var i=0; i<vLoops; i++) {
+ foo = [];
+ };
+ };
+
+ function ArrayCreate2(vLoops)
+ {
+ var foo;
+
+ for (var i=0; i<vLoops; i++) {
+ foo = new Array;
+ };
+ };
+
+ function ArrayCreate3(vLoops)
+ {
+ var foo;
+
+ for (var i=0; i<vLoops; i++) {
+ foo = new Array();
+ };
+ };
+
+ new qx.dev.TimeTracker(ArrayCreate1, ArrayCreate2, ArrayCreate3);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/ArrayCreate_2.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/ArrayCreate_2.html
new file mode 100644
index 0000000000..24dc250844
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/ArrayCreate_2.html
@@ -0,0 +1,47 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Tests for filled Array creation performance</p>
+ <ol>
+ <li>Using "[ values ]"</li>
+ <li>Using "new Array(values)"</li>
+ </ol>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ function ArrayCreate1(vLoops)
+ {
+ var foo;
+
+ for (var i=0; i<vLoops; i++) {
+ foo = [ 1, 2, 3, 4, 5 ];
+ };
+ };
+
+ function ArrayCreate2(vLoops)
+ {
+ var foo;
+
+ for (var i=0; i<vLoops; i++) {
+ foo = new Array(1, 2, 3, 4, 5);
+ };
+ };
+
+ new qx.dev.TimeTracker(ArrayCreate1, ArrayCreate2);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/GlobalObject_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/GlobalObject_1.html
new file mode 100644
index 0000000000..438d962c89
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/GlobalObject_1.html
@@ -0,0 +1,43 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>JS Object Storage Performance</p>
+
+ <h1>Test Description</h1>
+ <p>Create 10.000 new (non stored) objects inside a loop. Identical to LocalObject_1.html.</p>
+
+ <h1>Result</h1>
+ <p>The performance in IE is quite good (~330ms for each loop), compared to the same stuff executed without the precreated stuff.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ function test()
+ {
+ var _s = (new Date).valueOf();
+
+ for (var i=0; i<10000; i++) {
+ new Object()
+ };
+
+ window.status = "time: " + (new Date).valueOf() + " | measured: " + ((new Date).valueOf() - _s) + "ms";
+ window.setTimeout(test, 1000);
+ }
+
+ test();
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/GlobalObject_2.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/GlobalObject_2.html
new file mode 100644
index 0000000000..747381ab23
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/GlobalObject_2.html
@@ -0,0 +1,51 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>JS Object Storage Performance</p>
+
+ <h1>Test Description</h1>
+ <p>Precreate 50.000 objects (globally stored). After this create 10.000 new (non stored) objects inside a loop.</p>
+ <p>Keep global storage over runtime.</p>
+
+ <h1>Result</h1>
+ <p>The performance in IE is poor (~1150ms for each loop), compared to the same stuff executed without so much precreated objects (previous example).</p>
+ <p>It makes no difference if we use a global or a local variable here. It's identical to LocalObject_2.html.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ window.store = [];
+
+ for (var i=0; i<50000; i++) {
+ window.store.push({});
+ };
+
+ function test()
+ {
+ var _s = (new Date).valueOf();
+
+ for (var i=0; i<10000; i++) {
+ new Object()
+ };
+
+ window.status = "time: " + (new Date).valueOf() + " | measured: " + ((new Date).valueOf() - _s) + "ms";
+ window.setTimeout(test, 1000);
+ }
+
+ test();
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/GlobalObject_3.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/GlobalObject_3.html
new file mode 100644
index 0000000000..1e992095b1
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/GlobalObject_3.html
@@ -0,0 +1,53 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>JS Object Storage Performance</p>
+
+ <h1>Test Description</h1>
+ <p>Precreate 50.000 objects (globally stored). After this create 10.000 new (non stored) objects inside a loop.</p>
+ <p>Use removeAll to clean up global storage after first loop.</p>
+
+ <h1>Result</h1>
+ <p>The additional cleanup (remove all entries) of the global storage optimizes performance after the first loop. First loop is done after ~1150ms. The following loop needs ~490ms. Not bad, but poorly compared to the version, where the storage have never exist before. (See first examples, which executes in ~350ms.)</p>
+ <p>It makes no difference if we use a global or a local variable here. It's identical to LocalObject_3.html.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ window.store = [];
+
+ for (var i=0; i<50000; i++) {
+ window.store.push({});
+ };
+
+ function test()
+ {
+ var _s = (new Date).valueOf();
+
+ for (var i=0; i<10000; i++) {
+ new Object()
+ };
+
+ window.status = "time: " + (new Date).valueOf() + " | measured: " + ((new Date).valueOf() - _s) + "ms";
+ window.setTimeout(test, 1000);
+ }
+
+ test();
+
+ qx.lang.Array.removeAll(window.store);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/GlobalObject_4.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/GlobalObject_4.html
new file mode 100644
index 0000000000..e8f766358c
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/GlobalObject_4.html
@@ -0,0 +1,52 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>JS Object Storage Performance</p>
+
+ <h1>Test Description</h1>
+ <p>Precreate 50.000 objects (globally stored). After this create 10.000 new (non stored) objects inside a loop.</p>
+ <p>Overwrite global storage to clean up after first loop.</p>
+
+ <h1>Result</h1>
+ <p>The additional cleanup (overwrite with null) of the global storage optimizes performance after the first loop. First loop is done after ~1150ms. The following loop needs ~350ms. Quite good. The same value as in the first example, where the data have never exist.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ window.store = [];
+
+ for (var i=0; i<50000; i++) {
+ window.store.push({});
+ };
+
+ function test()
+ {
+ var _s = (new Date).valueOf();
+
+ for (var i=0; i<10000; i++) {
+ new Object()
+ };
+
+ window.status = "time: " + (new Date).valueOf() + " | measured: " + ((new Date).valueOf() - _s) + "ms";
+ window.setTimeout(test, 1000);
+ }
+
+ test();
+
+ window.store = null;
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/LocalObject_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/LocalObject_1.html
new file mode 100644
index 0000000000..5228d4fe23
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/LocalObject_1.html
@@ -0,0 +1,43 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>JS Object Storage Performance</p>
+
+ <h1>Test Description</h1>
+ <p>Create 10.000 new (non stored) objects inside a loop. Identical to GlobalObject_1.html.</p>
+
+ <h1>Result</h1>
+ <p>The performance in IE is quite good (~330ms for each loop), compared to the same stuff executed without the precreated stuff.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ function test()
+ {
+ var _s = (new Date).valueOf();
+
+ for (var i=0; i<10000; i++) {
+ new Object()
+ };
+
+ window.status = "time: " + (new Date).valueOf() + " | measured: " + ((new Date).valueOf() - _s) + "ms";
+ window.setTimeout(test, 1000);
+ }
+
+ test();
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/LocalObject_2.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/LocalObject_2.html
new file mode 100644
index 0000000000..dca923d209
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/LocalObject_2.html
@@ -0,0 +1,51 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>JS Object Storage Performance</p>
+
+ <h1>Test Description</h1>
+ <p>Precreate 50.000 objects (locally stored). After this create 10.000 new (not stored) objects inside a loop.</p>
+ <p>As the loop will be executed inside the scope of "store", the browser must keep the information about "store" with each execution of "test", even if called from the timeout.</p>
+
+ <h1>Result</h1>
+ <p>The performance in IE is poor (~1150ms for each loop), compared to the same stuff executed without so much precreated objects (previous example).</p>
+ <p>It makes no difference if we use a global or a local variable here. It's identical to GlobalObject_2.html.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var store = [];
+
+ for (var i=0; i<50000; i++) {
+ store.push({});
+ };
+
+ function test()
+ {
+ var _s = (new Date).valueOf();
+
+ for (var i=0; i<10000; i++) {
+ new Object()
+ };
+
+ window.status = "time: " + (new Date).valueOf() + " | measured: " + ((new Date).valueOf() - _s) + "ms";
+ window.setTimeout(test, 1000);
+ }
+
+ test();
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/LocalObject_3.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/LocalObject_3.html
new file mode 100644
index 0000000000..cf180b4318
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/LocalObject_3.html
@@ -0,0 +1,52 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>JS Object Storage Performance</p>
+
+ <h1>Test Description</h1>
+ <p>Precreate 50.000 objects (locally stored). After this create 10.000 new (not stored) objects inside a loop.</p>
+
+ <h1>Result</h1>
+ <p>The additional cleanup (remove all entries) of the local storage optimizes performance after the first loop. First loop is done after ~1150ms. The following loop needs ~490ms. Not bad, but poorly compared to the version, where the storage have never exist before. (See first examples, which executes in ~350ms.)</p>
+ <p>It makes no difference if we use a global or a local variable here. It's identical to GlobalObject_3.html.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var store = [];
+
+ for (var i=0; i<50000; i++) {
+ store.push({});
+ };
+
+ function test()
+ {
+ var _s = (new Date).valueOf();
+
+ for (var i=0; i<10000; i++) {
+ new Object()
+ };
+
+ window.status = "time: " + (new Date).valueOf() + " | measured: " + ((new Date).valueOf() - _s) + "ms";
+ window.setTimeout(test, 1000);
+ }
+
+ test();
+
+ qx.lang.Array.removeAll(store);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/LocalObject_4.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/LocalObject_4.html
new file mode 100644
index 0000000000..0cd346a605
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/LocalObject_4.html
@@ -0,0 +1,53 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>JS Object Storage Performance</p>
+
+ <h1>Test Description</h1>
+ <p>Precreate 50.000 objects (locally stored). After this create 10.000 new (not stored) objects inside a loop.</p>
+ <p>The "store" variable will be resetted after the first loop with "null".</p>
+
+ <h1>Result</h1>
+ <p>The additional cleanup (overwrite with null) of the global storage optimizes performance after the first loop. First loop is done after ~1150ms. The following loop needs ~350ms. Quite good. The same value as in the first example, where the data have never exist.</p>
+ <p>Interesting because theoratically the function implemenetation of "test" is inside the scope of "store".</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var store = [];
+
+ for (var i=0; i<50000; i++) {
+ store.push({});
+ };
+
+ function test()
+ {
+ var _s = (new Date).valueOf();
+
+ for (var i=0; i<10000; i++) {
+ new Object()
+ };
+
+ window.status = "time: " + (new Date).valueOf() + " | measured: " + ((new Date).valueOf() - _s) + "ms";
+ window.setTimeout(test, 1000);
+ }
+
+ test();
+
+ store = null;
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/LocalObject_5.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/LocalObject_5.html
new file mode 100644
index 0000000000..0c218f965a
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/LocalObject_5.html
@@ -0,0 +1,50 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>JS Object Storage Performance</p>
+
+ <h1>Test Description</h1>
+ <p>Precreate 50.000 objects (locally stored). After this create 10.000 new (not stored) objects inside a loop.</p>
+ <p>The test method is implemented outside of the scope of "store".</p>
+
+ <h1>Result</h1>
+ <p>We need no additional cleanup to get a good performance of the function. First loop is done after ~1150ms. The following loop needs ~350ms. Quite good. The same value as in the first example, where the data have never exist.</p>
+ </div>
+
+ <script type="text/javascript">
+ function test()
+ {
+ var _s = (new Date).valueOf();
+
+ for (var i=0; i<10000; i++) {
+ new Object()
+ };
+
+ window.status = "time: " + (new Date).valueOf() + " | measured: " + ((new Date).valueOf() - _s) + "ms";
+ window.setTimeout(test, 1000);
+ }
+
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var store = [];
+
+ for (var i=0; i<50000; i++) {
+ store.push({});
+ };
+
+ test();
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/NumberCreate_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/NumberCreate_1.html
new file mode 100644
index 0000000000..79c1e4096a
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/NumberCreate_1.html
@@ -0,0 +1,110 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Tests for Number creation performance</p>
+ <ol>
+ <li>Using simple number</li>
+ <li>Using parseInt</li>
+ <li>Using parseFloat</li>
+ <li>Using new with string int</li>
+ <li>Using new with string float</li>
+ <li>Using new with simple number</li>
+ <li>Using new with parseInt</li>
+ <li>Using new with parseFloat</li>
+ </ol>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var n1 = "2392";
+ var n2 = "223.92";
+
+ function NumberCreate1(vLoops)
+ {
+ var foo;
+
+ for (var i=0; i<vLoops; i++) {
+ foo = 2392;
+ };
+ };
+
+ function NumberCreate2(vLoops)
+ {
+ var foo;
+
+ for (var i=0; i<vLoops; i++) {
+ foo = parseInt(n1);
+ };
+ };
+
+ function NumberCreate3(vLoops)
+ {
+ var foo;
+
+ for (var i=0; i<vLoops; i++) {
+ foo = parseFloat(n2);
+ };
+ };
+
+ function NumberCreate4(vLoops)
+ {
+ var foo;
+
+ for (var i=0; i<vLoops; i++) {
+ foo = new Number(n1);
+ };
+ };
+
+ function NumberCreate5(vLoops)
+ {
+ var foo;
+
+ for (var i=0; i<vLoops; i++) {
+ foo = new Number(n2);
+ };
+ };
+
+ function NumberCreate6(vLoops)
+ {
+ var foo;
+
+ for (var i=0; i<vLoops; i++) {
+ foo = new Number(2392);
+ };
+ };
+
+ function NumberCreate7(vLoops)
+ {
+ var foo;
+
+ for (var i=0; i<vLoops; i++) {
+ foo = new Number(parseInt(n1));
+ };
+ };
+
+ function NumberCreate8(vLoops)
+ {
+ var foo;
+
+ for (var i=0; i<vLoops; i++) {
+ foo = new Number(parseFloat(n2));
+ };
+ };
+
+ new qx.dev.TimeTracker(NumberCreate1, NumberCreate2, NumberCreate3, NumberCreate4, NumberCreate5, NumberCreate6, NumberCreate7, NumberCreate8);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/ObjectCreate_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/ObjectCreate_1.html
new file mode 100644
index 0000000000..9e2743b78b
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/ObjectCreate_1.html
@@ -0,0 +1,57 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Tests for empty Object creation performance</p>
+ <ol>
+ <li>Using "{}"</li>
+ <li>Using "new Object"</li>
+ <li>Using "new Object()"</li>
+ </ol>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ function ObjectCreate1(vLoops)
+ {
+ var foo;
+
+ for (var i=0; i<vLoops; i++) {
+ foo = {};
+ };
+ };
+
+ function ObjectCreate2(vLoops)
+ {
+ var foo;
+
+ for (var i=0; i<vLoops; i++) {
+ foo = new Object;
+ };
+ };
+
+ function ObjectCreate3(vLoops)
+ {
+ var foo;
+
+ for (var i=0; i<vLoops; i++) {
+ foo = new Object();
+ };
+ };
+
+ new qx.dev.TimeTracker(ObjectCreate1, ObjectCreate2, ObjectCreate3);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/ObjectCreate_2.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/ObjectCreate_2.html
new file mode 100644
index 0000000000..2e6dac8a72
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/ObjectCreate_2.html
@@ -0,0 +1,77 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Tests for filled Object creation performance</p>
+ <ol>
+ <li>Using "{ content }"</li>
+ <li>Using "new Object; obj.key = value"</li>
+ <li>Using "new Object(); obj.key = value"</li>
+ </ol>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ function ObjectCreate1(vLoops)
+ {
+ var foo;
+
+ for (var i=0; i<vLoops; i++) {
+ foo = {
+ key1 : 1,
+ key2 : 2,
+ key3 : 3,
+ key4 : 4,
+ key5 : 5
+ };
+ };
+ };
+
+ function ObjectCreate2(vLoops)
+ {
+ var foo;
+
+ for (var i=0; i<vLoops; i++)
+ {
+ foo = new Object;
+
+ foo.key1 = 1;
+ foo.key2 = 2;
+ foo.key3 = 3;
+ foo.key4 = 4;
+ foo.key5 = 5;
+ };
+ };
+
+ function ObjectCreate3(vLoops)
+ {
+ var foo;
+
+ for (var i=0; i<vLoops; i++)
+ {
+ foo = new Object();
+
+ foo.key1 = 1;
+ foo.key2 = 2;
+ foo.key3 = 3;
+ foo.key4 = 4;
+ foo.key5 = 5;
+ };
+ };
+
+ new qx.dev.TimeTracker(ObjectCreate1, ObjectCreate2, ObjectCreate3);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/ObjectLevel_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/ObjectLevel_1.html
new file mode 100755
index 0000000000..7b5034c7e6
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/ObjectLevel_1.html
@@ -0,0 +1,92 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Testing the influence of inheritance to object creation performance.</p>
+ <p>Result: Each inheritance level increases the negative effect.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ function l1() {
+ this.store = true;
+ }
+
+ function l2() {
+ l1.call(this);
+ }
+ l2.prototype = new l1;
+
+ function l3() {
+ l2.call(this);
+ }
+ l3.prototype = new l2;
+
+ function l4() {
+ l3.call(this);
+ }
+ l4.prototype = new l3;
+
+ function l5() {
+ l4.call(this);
+ }
+ l5.prototype = new l4;
+
+ function l6() {
+ l5.call(this);
+ }
+ l6.prototype = new l5;
+
+
+ function t1(vLoops) {
+ for (var i=0; i<vLoops; i++) {
+ new l1;
+ }
+ }
+
+ function t2(vLoops) {
+ for (var i=0; i<vLoops; i++) {
+ new l2;
+ }
+ }
+
+ function t3(vLoops) {
+ for (var i=0; i<vLoops; i++) {
+ new l3;
+ }
+ }
+
+ function t4(vLoops) {
+ for (var i=0; i<vLoops; i++) {
+ new l4;
+ }
+ }
+
+ function t5(vLoops) {
+ for (var i=0; i<vLoops; i++) {
+ new l5;
+ }
+ }
+
+ function t6(vLoops) {
+ for (var i=0; i<vLoops; i++) {
+ new l6;
+ }
+ }
+
+ new qx.dev.TimeTracker(t1, t2, t3, t4, t5, t6);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/ObjectLevel_2.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/ObjectLevel_2.html
new file mode 100755
index 0000000000..90a60bb715
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/ObjectLevel_2.html
@@ -0,0 +1,88 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Testing the influence of inheritance to object creation performance.</p>
+ <p>Don't execute superclass constructor.</p>
+ <p>Result: No negative effect!</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ function l1() {
+ this.store = true;
+ }
+
+ function l2() {
+ }
+ l2.prototype = new l1;
+
+ function l3() {
+ }
+ l3.prototype = new l2;
+
+ function l4() {
+ }
+ l4.prototype = new l3;
+
+ function l5() {
+ }
+ l5.prototype = new l4;
+
+ function l6() {
+ }
+ l6.prototype = new l5;
+
+
+ function t1(vLoops) {
+ for (var i=0; i<vLoops; i++) {
+ new l1;
+ }
+ }
+
+ function t2(vLoops) {
+ for (var i=0; i<vLoops; i++) {
+ new l2;
+ }
+ }
+
+ function t3(vLoops) {
+ for (var i=0; i<vLoops; i++) {
+ new l3;
+ }
+ }
+
+ function t4(vLoops) {
+ for (var i=0; i<vLoops; i++) {
+ new l4;
+ }
+ }
+
+ function t5(vLoops) {
+ for (var i=0; i<vLoops; i++) {
+ new l5;
+ }
+ }
+
+ function t6(vLoops) {
+ for (var i=0; i<vLoops; i++) {
+ new l6;
+ }
+ }
+
+ new qx.dev.TimeTracker(t1, t2, t3, t4, t5, t6);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/ObjectLevel_3.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/ObjectLevel_3.html
new file mode 100644
index 0000000000..88433a8558
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/ObjectLevel_3.html
@@ -0,0 +1,97 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Testing the influence of inheritance to object creation performance.</p>
+ <p>Result: Each inheritance level increases the negative effect.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ function l1() {
+ this.store = true;
+ }
+
+ function l2() {
+ this._t = l1;
+ this._t();
+ }
+ l2.prototype = new l1;
+
+ function l3() {
+ this._t = l2;
+ this._t();
+ }
+ l3.prototype = new l2;
+
+ function l4() {
+ this._t = l3;
+ this._t();
+ }
+ l4.prototype = new l3;
+
+ function l5() {
+ this._t = l4;
+ this._t();
+ }
+ l5.prototype = new l4;
+
+ function l6() {
+ this._t = l5;
+ this._t();
+ }
+ l6.prototype = new l5;
+
+
+ function t1(vLoops) {
+ for (var i=0; i<vLoops; i++) {
+ new l1;
+ }
+ }
+
+ function t2(vLoops) {
+ for (var i=0; i<vLoops; i++) {
+ new l2;
+ }
+ }
+
+ function t3(vLoops) {
+ for (var i=0; i<vLoops; i++) {
+ new l3;
+ }
+ }
+
+ function t4(vLoops) {
+ for (var i=0; i<vLoops; i++) {
+ new l4;
+ }
+ }
+
+ function t5(vLoops) {
+ for (var i=0; i<vLoops; i++) {
+ new l5;
+ }
+ }
+
+ function t6(vLoops) {
+ for (var i=0; i<vLoops; i++) {
+ new l6;
+ }
+ }
+
+ new qx.dev.TimeTracker(t1, t2, t3, t4, t5, t6);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/ObjectSize_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/ObjectSize_1.html
new file mode 100755
index 0000000000..27fd66313a
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/ObjectSize_1.html
@@ -0,0 +1,62 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Testing the incluence to the performance of data using the prototype mechanism on classes.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var emptyObject = function() {};
+ var protoObject1 = function() {};
+ var protoObject2 = function() {};
+
+ for (var i=0; i<1000; i++)
+ {
+ protoObject1.prototype["i" + i] = function() {
+ alert("Hello World: " + i);
+ };
+ }
+
+ for (var i=0; i<1000; i++)
+ {
+ protoObject2.prototype["i" + i] = "Hello World";
+ }
+
+ function empty(vLoops)
+ {
+ for (var i=0; i<vLoops; i++) {
+ new emptyObject;
+ }
+ }
+
+ function protos1(vLoops)
+ {
+ for (var i=0; i<vLoops; i++) {
+ new protoObject1;
+ }
+ }
+
+ function protos2(vLoops)
+ {
+ for (var i=0; i<vLoops; i++) {
+ new protoObject2;
+ }
+ }
+
+ new qx.dev.TimeTracker(empty, protos1, protos2);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/Qooxdoo_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/Qooxdoo_1.html
new file mode 100644
index 0000000000..25810becb9
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/Qooxdoo_1.html
@@ -0,0 +1,83 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Tests for qooxdoo object performance</p>
+ <ol>
+ <li>qx.core.Object</li>
+ <li>qx.core.Target</li>
+ <li>qx.event.type.Event</li>
+ <li>qx.event.type.MouseEvent</li>
+ <li>qx.ui.basic.Terminator</li>
+ <li>qx.ui.layout.CanvasLayout</li>
+ <li>qx.ui.layout.BoxLayout</li>
+ </ol>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ function TestObject(vLoops)
+ {
+ for (var i=0; i<vLoops; i++) {
+ new qx.core.Object;
+ };
+ };
+
+ function TestTarget(vLoops)
+ {
+ for (var i=0; i<vLoops; i++) {
+ new qx.core.Target;
+ };
+ };
+
+ function TestEvent(vLoops)
+ {
+ for (var i=0; i<vLoops; i++) {
+ new qx.event.type.Event;
+ };
+ };
+
+ function TestMouseEvent(vLoops)
+ {
+ for (var i=0; i<vLoops; i++) {
+ new qx.event.type.MouseEvent;
+ };
+ };
+
+ function TestTerminator(vLoops)
+ {
+ for (var i=0; i<vLoops; i++) {
+ new qx.ui.basic.Terminator;
+ };
+ };
+
+ function TestCanvasLayout(vLoops)
+ {
+ for (var i=0; i<vLoops; i++) {
+ new qx.ui.layout.CanvasLayout;
+ };
+ };
+
+ function TestBoxLayout(vLoops)
+ {
+ for (var i=0; i<vLoops; i++) {
+ new qx.ui.layout.BoxLayout;
+ };
+ };
+
+ new qx.dev.TimeTracker(TestObject, TestTarget, TestEvent, TestMouseEvent, TestTerminator, TestCanvasLayout, TestBoxLayout);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/StringConcat_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/StringConcat_1.html
new file mode 100644
index 0000000000..cd2e3630d7
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/StringConcat_1.html
@@ -0,0 +1,95 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Tests for String Performance. Using new String instances for concat.</p>
+ <ol>
+ <li>Operator +=</li>
+ <li>Operators = and +</li>
+ <li>Concat function</li>
+ <li>Array Push</li>
+ <li>Array Index</li>
+ <li>StringBuilder Object</li>
+ </ol>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ function StringConcatShort(vLoops)
+ {
+ var s = "";
+
+ for (var i=0; i<vLoops; i++) {
+ s += "a";
+ };
+ };
+
+ function StringConcatShortAlt(vLoops)
+ {
+ var s = "";
+
+ for (var i=0; i<vLoops; i++) {
+ s = s + "a";
+ };
+ };
+
+ function StringConcatMethod(vLoops)
+ {
+ var s = "";
+
+ for (var i=0; i<vLoops; i++) {
+ s=s.concat("a");
+ };
+ };
+
+ function StringConcatArrayPush(vLoops)
+ {
+ var s = [];
+
+ for (var i=0; i<vLoops; i++) {
+ s.push("a");
+ };
+
+ s = s.join("");
+ };
+
+ function StringConcatArrayAdd(vLoops)
+ {
+ var s = [];
+
+ for (var i=0; i<vLoops; i++) {
+ s[s.length] = "a";
+ };
+
+ s = s.join("");
+ };
+
+ function StringConcatStringBuilder(vLoops)
+ {
+ var s = new qx.util.StringBuilder;
+
+ for (var i=0; i<vLoops; i++) {
+ s.add("a");
+ };
+
+ s = s.get();
+ };
+
+ new qx.dev.TimeTracker(StringConcatShort, StringConcatShortAlt,
+ StringConcatMethod, StringConcatArrayPush, StringConcatArrayAdd,
+ StringConcatStringBuilder);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/StringConcat_2.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/StringConcat_2.html
new file mode 100644
index 0000000000..5b17c14f7d
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/StringConcat_2.html
@@ -0,0 +1,98 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Tests for String Performance. Using cached string instances for concat.</p>
+ <ol>
+ <li>Operator +=</li>
+ <li>Operators = and +</li>
+ <li>Concat function</li>
+ <li>Array Push</li>
+ <li>Array Index</li>
+ <li>StringBuilder Object</li>
+ </ol>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var e = "";
+ var a = "a";
+
+ function StringConcatShort(vLoops)
+ {
+ var s = e;
+
+ for (var i=0; i<vLoops; i++) {
+ s += a;
+ };
+ };
+
+ function StringConcatShortAlt(vLoops)
+ {
+ var s = e;
+
+ for (var i=0; i<vLoops; i++) {
+ s = s + a;
+ };
+ };
+
+ function StringConcatMethod(vLoops)
+ {
+ var s = e;
+
+ for (var i=0; i<vLoops; i++) {
+ s=s.concat(a);
+ };
+ };
+
+ function StringConcatArrayPush(vLoops)
+ {
+ var s = [];
+
+ for (var i=0; i<vLoops; i++) {
+ s.push(a);
+ };
+
+ s = s.join(e);
+ };
+
+ function StringConcatArrayAdd(vLoops)
+ {
+ var s = [];
+
+ for (var i=0; i<vLoops; i++) {
+ s[s.length] = a;
+ };
+
+ s = s.join(e);
+ };
+
+ function StringConcatStringBuilder(vLoops)
+ {
+ var s = new qx.util.StringBuilder;
+
+ for (var i=0; i<vLoops; i++) {
+ s.add(a);
+ };
+
+ s = s.get();
+ };
+
+ new qx.dev.TimeTracker(StringConcatShort, StringConcatShortAlt,
+ StringConcatMethod, StringConcatArrayPush, StringConcatArrayAdd,
+ StringConcatStringBuilder);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/StringConcat_3.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/StringConcat_3.html
new file mode 100644
index 0000000000..e802984215
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/StringConcat_3.html
@@ -0,0 +1,109 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Tests for String Performance.</p>
+ <p>Getting an filled array of strings and try to combine them.</p>
+
+ <ol>
+ <li>Operator +=</li>
+ <li>Operators = and +</li>
+ <li>Concat function</li>
+ <li>Array Push</li>
+ <li>Array Index</li>
+ <li>Array Append</li>
+ </ol>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var e = "";
+ var a = "a";
+
+ function getStringArr(vLoops)
+ {
+ var s = [];
+
+ for (var i=0; i<vLoops; i++) {
+ s.push(a);
+ };
+
+ return s;
+ };
+
+ function StringConcatShort(vLoops)
+ {
+ var s = e;
+
+ for (var i=0; i<vLoops; i++) {
+ s += getStringArr(vLoops).join(e);
+ };
+ };
+
+ function StringConcatShortAlt(vLoops)
+ {
+ var s = e;
+
+ for (var i=0; i<vLoops; i++) {
+ s = s + getStringArr(vLoops).join(e);
+ };
+ };
+
+ function StringConcatMethod(vLoops)
+ {
+ var s = e;
+
+ for (var i=0; i<vLoops; i++) {
+ s=s.concat(getStringArr(vLoops).join(e));
+ };
+ };
+
+ function StringConcatArrayPush(vLoops)
+ {
+ var s = [];
+
+ for (var i=0; i<vLoops; i++) {
+ s.push(getStringArr(vLoops).join(e));
+ };
+
+ s = s.join(e);
+ };
+
+ function StringConcatArrayAdd(vLoops)
+ {
+ var s = [];
+
+ for (var i=0; i<vLoops; i++) {
+ s[s.length] = getStringArr(vLoops).join(e);
+ };
+
+ s = s.join(e);
+ };
+
+ function StringConcatArrayAppend(vLoops)
+ {
+ var s = [];
+
+ for (var i=0; i<vLoops; i++) {
+ s.push.apply(s, getStringArr(vLoops));
+ };
+
+ s = s.join(e);
+ };
+
+ new qx.dev.TimeTracker(StringConcatShort, StringConcatShortAlt, StringConcatMethod, StringConcatArrayPush, StringConcatArrayAdd, StringConcatArrayAppend);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/TypeCheck_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/TypeCheck_1.html
new file mode 100644
index 0000000000..5d202ecff3
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/TypeCheck_1.html
@@ -0,0 +1,84 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Tests for typical value checks and their performance.</p>
+ <ol>
+ <li>Typeof with Strings</li>
+ <li>Typeof with Constants</li>
+ <li>Instanceof</li>
+ </ol>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var STR = "string";
+ var NR = "number";
+ var OBJ = "object";
+
+ var str = "Hello World"
+ var nr1 = 1000;
+ var nr2 = Infinity;
+ var nr3 = NaN;
+ var nr4 = 0.432;
+ var obj1 = {};
+ var obj2 = { key1 : "hello world", key2 : "hello world", key3 : "hello world" }
+
+ function typeCheckTypeof1(vLoops)
+ {
+ for (var i=0; i<vLoops; i++)
+ {
+ typeof str === "string";
+ typeof nr1 === "number";
+ typeof nr2 === "number";
+ typeof nr3 === "number";
+ typeof nr4 === "number";
+ typeof obj1 === "object";
+ typeof obj2 === "object";
+ }
+ }
+
+ function typeCheckTypeof2(vLoops)
+ {
+ for (var i=0; i<vLoops; i++)
+ {
+ typeof str === STR;
+ typeof nr1 === NR;
+ typeof nr2 === NR;
+ typeof nr3 === NR;
+ typeof nr4 === NR;
+ typeof obj1 === OBJ;
+ typeof obj2 === OBJ;
+ }
+ }
+
+ function typeCheckInstanceOf(vLoops)
+ {
+ for (var i=0; i<vLoops; i++)
+ {
+ str instanceof String
+ nr1 instanceof Number
+ nr2 instanceof Number
+ nr3 instanceof Number
+ nr4 instanceof Number
+ obj1 instanceof Object
+ obj2 instanceof Object
+ }
+ }
+
+ new qx.dev.TimeTracker(typeCheckTypeof1, typeCheckTypeof2, typeCheckInstanceOf);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/index.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/index.html
new file mode 100644
index 0000000000..6634518480
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/performance/index.html
@@ -0,0 +1,8 @@
+<html>
+ <head>
+ <script type="text/javascript">window.location.href="ArrayCreate_1.html";</script>
+ </head>
+ <body>
+ <a href="ArrayCreate_1.html">Continue...</a>
+ </body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Atom_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Atom_1.html
new file mode 100644
index 0000000000..0511ee7034
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Atom_1.html
@@ -0,0 +1,286 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Some speed tests for qx.ui.basic.Atom. Please regard, that many of things in the finished
+ page are modified on the already created and visible qx.ui.basic.Atom instances. This is not
+ a good example in scripting qooxdoo. It's always faster to configure a instance of qx.ui.core.Widget
+ completely, before add it to the qx.ui.core.ClientDocument or any other visible parent qx.ui.core.Widget.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ /*
+ ----------------------------------------------
+ TEST LEVEL I
+ ----------------------------------------------
+ */
+
+ var la1 = new qx.ui.basic.Atom("Test No #1", "icon/16/apps/preferences-desktop-multimedia.png");
+ with(la1)
+ {
+ setTop(48);
+ setLeft(20);
+ setIconPosition("left");
+ };
+ d.add(la1);
+
+
+ var la2 = new qx.ui.basic.Atom("Test No #2", "icon/16/apps/preferences-desktop-multimedia.png");
+ with(la2)
+ {
+ setTop(148);
+ setLeft(20);
+ setIconPosition("right");
+ };
+ d.add(la2);
+
+
+ var la3 = new qx.ui.basic.Atom("Test No #3", "icon/16/apps/preferences-desktop-multimedia.png");
+ with(la3)
+ {
+ setTop(248);
+ setLeft(20);
+ setIconPosition("top");
+ };
+ d.add(la3);
+
+
+ var la4 = new qx.ui.basic.Atom("Test No #4", "icon/16/apps/preferences-desktop-multimedia.png");
+ with(la4)
+ {
+ setTop(348);
+ setLeft(20);
+ setIconPosition("bottom");
+ };
+ d.add(la4);
+
+
+ /*
+ ----------------------------------------------
+ TEST LEVEL II
+ ----------------------------------------------
+ */
+
+ var lb1 = new qx.ui.basic.Atom("Test No #1", "icon/16/apps/preferences-desktop-multimedia.png");
+ with(lb1)
+ {
+ setTop(48);
+ setLeft(120);
+ setIconPosition("left");
+ };
+ d.add(lb1);
+ lb1.setIconPosition("right");
+
+
+ var lb2 = new qx.ui.basic.Atom("Test No #2", "icon/16/apps/preferences-desktop-multimedia.png");
+ with(lb2)
+ {
+ setTop(148);
+ setLeft(120);
+ setIconPosition("right");
+ };
+ d.add(lb2);
+ lb2.setIconPosition("left");
+
+
+ var lb3 = new qx.ui.basic.Atom("Test No #3", "icon/16/apps/preferences-desktop-multimedia.png");
+ with(lb3)
+ {
+ setTop(248);
+ setLeft(120);
+ setIconPosition("top");
+ };
+ d.add(lb3);
+ lb3.setIconPosition("bottom");
+
+
+ var lb4 = new qx.ui.basic.Atom("Test No #4", "icon/16/apps/preferences-desktop-multimedia.png");
+ with(lb4)
+ {
+ setTop(348);
+ setLeft(120);
+ setIconPosition("bottom");
+ };
+ d.add(lb4);
+ lb4.setIconPosition("top");
+
+
+
+
+ /*
+ ----------------------------------------------
+ TEST LEVEL III
+ ----------------------------------------------
+ */
+
+ var lc1 = new qx.ui.basic.Atom("Test No #1", "icon/16/apps/preferences-desktop-multimedia.png");
+ with(lc1)
+ {
+ setTop(48);
+ setLeft(220);
+ setIconPosition("left");
+ };
+ d.add(lc1);
+ lc1.setIconPosition("top");
+
+
+ var lc2 = new qx.ui.basic.Atom("Test No #2", "icon/16/apps/preferences-desktop-multimedia.png");
+ with(lc2)
+ {
+ setTop(148);
+ setLeft(220);
+ setIconPosition("right");
+ };
+ d.add(lc2);
+ lc2.setIconPosition("bottom");
+
+
+ var lc3 = new qx.ui.basic.Atom("Test No #3", "icon/16/apps/preferences-desktop-multimedia.png");
+ with(lc3)
+ {
+ setTop(248);
+ setLeft(220);
+ setIconPosition("top");
+ };
+ d.add(lc3);
+ lc3.setIconPosition("right");
+
+
+ var lc4 = new qx.ui.basic.Atom("Test No #4", "icon/16/apps/preferences-desktop-multimedia.png");
+ with(lc4)
+ {
+ setTop(348);
+ setLeft(220);
+ setIconPosition("bottom");
+ };
+ d.add(lc4);
+ lc4.setIconPosition("left");
+
+
+
+
+ /*
+ ----------------------------------------------
+ TEST LEVEL IV
+ ----------------------------------------------
+ */
+
+ var ld1 = new qx.ui.basic.Atom("Test No #1", "icon/16/apps/preferences-desktop-multimedia.png");
+ with(ld1)
+ {
+ setTop(48);
+ setLeft(320);
+ setIconPosition("left");
+ };
+ d.add(ld1);
+ ld1.setIconPosition("bottom");
+
+
+ var ld2 = new qx.ui.basic.Atom("Test No #2", "icon/16/apps/preferences-desktop-multimedia.png");
+ with(ld2)
+ {
+ setTop(148);
+ setLeft(320);
+ setIconPosition("right");
+ };
+ d.add(ld2);
+ ld2.setIconPosition("top");
+
+
+ var ld3 = new qx.ui.basic.Atom("Test No #3", "icon/16/apps/preferences-desktop-multimedia.png");
+ with(ld3)
+ {
+ setTop(248);
+ setLeft(320);
+ setIconPosition("top");
+ };
+ d.add(ld3);
+ ld3.setIconPosition("left");
+
+
+ var ld4 = new qx.ui.basic.Atom("Test No #4", "icon/16/apps/preferences-desktop-multimedia.png");
+ with(ld4)
+ {
+ setTop(348);
+ setLeft(320);
+ setIconPosition("bottom");
+ };
+ d.add(ld4);
+ ld4.setIconPosition("right");
+
+
+
+
+
+ /*
+ ----------------------------------------------
+ TEST LEVEL V
+ ----------------------------------------------
+ */
+
+ var le1 = new qx.ui.basic.Atom("Test No #1", "icon/16/apps/preferences-desktop-multimedia.png");
+ with(le1)
+ {
+ setTop(48);
+ setLeft(420);
+ setIconPosition("right");
+ };
+ d.add(le1);
+ le1.setIconPosition("top");
+
+
+ var le2 = new qx.ui.basic.Atom("Test No #2", "icon/16/apps/preferences-desktop-multimedia.png");
+ with(le2)
+ {
+ setTop(148);
+ setLeft(420);
+ setIconPosition("left");
+ };
+ d.add(le2);
+ le2.setIconPosition("bottom");
+
+
+ var le3 = new qx.ui.basic.Atom("Test No #3", "icon/16/apps/preferences-desktop-multimedia.png");
+ with(le3)
+ {
+ setTop(248);
+ setLeft(420);
+ setIconPosition("top");
+ };
+ d.add(le3);
+ le3.setIconPosition("right");
+
+
+ var le4 = new qx.ui.basic.Atom("Test No #4", "icon/16/apps/preferences-desktop-multimedia.png");
+ with(le4)
+ {
+ setTop(348);
+ setLeft(420);
+ setIconPosition("bottom");
+ };
+ d.add(le4);
+ le4.setIconPosition("left");
+
+
+
+
+
+
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Atom_2.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Atom_2.html
new file mode 100644
index 0000000000..5dcd5af424
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Atom_2.html
@@ -0,0 +1,187 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Example to show correct calculations of qx.ui.basic.Atom sizes. Normally a qx.ui.basic.Atom has only the size of its content.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var w = qx.ui.core.ClientDocument.getInstance();
+
+
+ function alertoff() {
+ alert(this.getElement().offsetWidth + "x" + this.getElement().offsetHeight);
+ };
+
+ var l1 = new qx.ui.layout.CanvasLayout();
+ var l2 = new qx.ui.layout.CanvasLayout();
+
+ with(l1)
+ {
+ setTop(100);
+ setLeft(20);
+ setWidth(500);
+ setHeight(1);
+ setBackgroundColor("red");
+ setOverflow("hidden");
+ };
+
+ with(l2)
+ {
+ setTop(123);
+ setLeft(20);
+ setWidth(500);
+ setHeight(1);
+ setBackgroundColor("red");
+ setOverflow("hidden");
+ };
+
+ w.add(l1);
+ w.add(l2);
+
+
+
+ var a1 = new qx.ui.basic.Atom("Pure Text", "icon/22/places/folder.png");
+ var a2 = new qx.ui.basic.Atom(null, "icon/22/places/folder.png");
+
+ with(a1) {
+ setBorder(new qx.renderer.border.Border(1, "solid", "black"));
+ setTop(100);
+ setLeft(120);
+ };
+
+ with(a2) {
+ setBorder(new qx.renderer.border.Border(1, "solid", "black"));
+ setTop(100);
+ setLeft(300);
+ };
+
+ w.add(a1);
+ w.add(a2);
+
+ a1.addEventListener("click", alertoff);
+ a2.addEventListener("click", alertoff);
+
+
+
+ var l3 = new qx.ui.layout.CanvasLayout();
+ var l4 = new qx.ui.layout.CanvasLayout();
+
+ with(l3)
+ {
+ setTop(200);
+ setLeft(20);
+ setWidth(500);
+ setHeight(1);
+ setBackgroundColor("red");
+ setOverflow("hidden");
+ };
+
+ with(l4)
+ {
+ setTop(233);
+ setLeft(20);
+ setWidth(500);
+ setHeight(1);
+ setBackgroundColor("red");
+ setOverflow("hidden");
+ };
+
+ w.add(l3);
+ w.add(l4);
+
+
+ var b1 = new qx.ui.basic.Atom("Pure Text", "icon/32/categories/applications-internet.png");
+ var b2 = new qx.ui.basic.Atom(null, "icon/32/categories/applications-internet.png");
+
+ with(b1) {
+ setBorder(new qx.renderer.border.Border(1, "solid", "black"));
+ setTop(200);
+ setLeft(120);
+ };
+
+ with(b2) {
+ setBorder(new qx.renderer.border.Border(1, "solid", "black"));
+ setTop(200);
+ setLeft(300);
+ };
+
+ w.add(b1);
+ w.add(b2);
+
+ b1.addEventListener("click", alertoff);
+ b2.addEventListener("click", alertoff);
+
+
+
+
+
+
+ var l5 = new qx.ui.layout.CanvasLayout();
+ var l6 = new qx.ui.layout.CanvasLayout();
+
+ with(l5)
+ {
+ setTop(300);
+ setLeft(20);
+ setWidth(500);
+ setHeight(1);
+ setBackgroundColor("red");
+ setOverflow("hidden");
+ };
+
+ with(l6)
+ {
+ setTop(317);
+ setLeft(20);
+ setWidth(500);
+ setHeight(1);
+ setBackgroundColor("red");
+ setOverflow("hidden");
+ };
+
+ w.add(l5);
+ w.add(l6);
+
+
+ var c1 = new qx.ui.basic.Atom("Pure Text", "icon/16/categories/applications-internet.png");
+ var c2 = new qx.ui.basic.Atom(null, "icon/16/categories/applications-internet.png");
+
+ with(c1) {
+ setBorder(new qx.renderer.border.Border(1, "solid", "black"));
+ setTop(300);
+ setLeft(120);
+ };
+
+ with(c2) {
+ setBorder(new qx.renderer.border.Border(1, "solid", "black"));
+ setTop(300);
+ setLeft(300);
+ };
+
+ w.add(c1);
+ w.add(c2);
+
+ c1.addEventListener("click", alertoff);
+ c2.addEventListener("click", alertoff);
+
+
+
+
+
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Atom_3.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Atom_3.html
new file mode 100644
index 0000000000..49f2595ced
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Atom_3.html
@@ -0,0 +1,322 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Layout tests for qx.ui.basic.Atom reimplementation.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+
+ var a1 = new qx.ui.basic.Atom;
+ a1.setLabel("hello world");
+ a1.setTop(48);
+ a1.setLeft(20);
+ a1.setPadding(2, 4);
+ a1.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ d.add(a1);
+
+ var a2 = new qx.ui.basic.Atom;
+ a2.setIcon("icon/32/actions/system-run.png");
+ a2.setTop(48);
+ a2.setLeft(120);
+ a2.setPadding(2, 4);
+ a2.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ d.add(a2);
+
+
+
+
+ var b1 = new qx.ui.basic.Atom;
+ b1.setLabel("hello world");
+ b1.setIcon("icon/32/actions/system-run.png");
+ b1.setIconPosition("left");
+ b1.setTop(100);
+ b1.setLeft(20);
+ b1.setPadding(2, 4);
+ b1.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ d.add(b1);
+
+ var b2 = new qx.ui.basic.Atom;
+ b2.setLabel("hello world");
+ b2.setIcon("icon/32/actions/system-run.png");
+ b2.setIconPosition("top");
+ b2.setTop(100);
+ b2.setLeft(120);
+ b2.setPadding(2, 4);
+ b2.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ d.add(b2);
+
+ var b3 = new qx.ui.basic.Atom;
+ b3.setLabel("hello world");
+ b3.setIcon("icon/32/actions/system-run.png");
+ b3.setIconPosition("right");
+ b3.setTop(100);
+ b3.setLeft(220);
+ b3.setPadding(2, 4);
+ b3.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ d.add(b3);
+
+ var b4 = new qx.ui.basic.Atom;
+ b4.setLabel("hello world");
+ b4.setIcon("icon/32/actions/system-run.png");
+ b4.setIconPosition("bottom");
+ b4.setTop(100);
+ b4.setLeft(320);
+ b4.setPadding(2, 4);
+ b4.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ d.add(b4);
+
+
+
+
+ var c1 = new qx.ui.basic.Atom;
+ c1.setLabel("hello world");
+ c1.setIcon("icon/32/actions/system-run.png");
+ c1.setShow("icon");
+ c1.setTop(180);
+ c1.setLeft(20);
+ c1.setPadding(2, 4);
+ c1.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ d.add(c1);
+
+ var c2 = new qx.ui.basic.Atom;
+ c2.setLabel("hello world");
+ c2.setIcon("icon/32/actions/system-run.png");
+ c2.setShow("label");
+ c2.setTop(180);
+ c2.setLeft(120);
+ c2.setPadding(2, 4);
+ c2.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ d.add(c2);
+
+
+
+
+
+ var d1 = new qx.ui.basic.Atom;
+ d1.setLabel("hello world");
+ d1.setIcon("icon/32/actions/system-run.png");
+ d1.setShow("icon");
+ d1.setTop(250);
+ d1.setLeft(20);
+ d1.setPadding(2, 4);
+ d1.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ d.add(d1);
+ d1.setShow("both");
+
+ var d2 = new qx.ui.basic.Atom;
+ d2.setLabel("hello world");
+ d2.setIcon("icon/32/actions/system-run.png");
+ d2.setShow("label");
+ d2.setTop(250);
+ d2.setLeft(120);
+ d2.setPadding(2, 4);
+ d2.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ d.add(d2);
+ d2.setShow("both");
+
+ var d3 = new qx.ui.basic.Atom;
+ d3.setLabel("hello world");
+ d3.setIcon("icon/32/actions/system-run.png");
+ d3.setShow("none");
+ d3.setTop(250);
+ d3.setLeft(220);
+ d3.setPadding(2, 4);
+ d3.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ d.add(d3);
+ d3.setShow("both");
+
+
+
+
+ var e1 = new qx.ui.basic.Atom;
+ e1.setIcon("icon/32/actions/system-run.png");
+ e1.setShow("none");
+ e1.setTop(300);
+ e1.setLeft(20);
+ e1.setPadding(2, 4);
+ e1.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ d.add(e1);
+ e1.setShow("both");
+ e1.setLabel("hello world");
+
+ var e2 = new qx.ui.basic.Atom;
+ e2.setLabel("hello world");
+ e2.setShow("none");
+ e2.setTop(300);
+ e2.setLeft(120);
+ e2.setPadding(2, 4);
+ e2.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ d.add(e2);
+ e2.setShow("both");
+ e2.setIcon("icon/32/actions/system-run.png");
+
+ var e3 = new qx.ui.basic.Atom;
+ e3.setShow("none");
+ e3.setTop(300);
+ e3.setLeft(220);
+ e3.setPadding(2, 4);
+ e3.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ d.add(e3);
+ e3.setShow("both");
+ e3.setIcon("icon/32/actions/system-run.png");
+ e3.setLabel("hello world");
+
+ var e4 = new qx.ui.basic.Atom;
+ e4.setShow("none");
+ e4.setTop(300);
+ e4.setLeft(320);
+ e4.setPadding(2, 4);
+ e4.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ d.add(e4);
+ e4.setShow("both");
+ e4.setLabel("hello world");
+ e4.setIcon("icon/32/actions/system-run.png");
+
+
+
+
+ var f1 = new qx.ui.basic.Atom;
+ f1.setLabel("hello world");
+ f1.setIcon("icon/32/actions/system-run.png");
+ f1.setIconPosition("left");
+ f1.setTop(350);
+ f1.setLeft(20);
+ f1.setPadding(2, 4);
+ f1.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ d.add(f1);
+ f1.setIconPosition("top");
+
+ var f2 = new qx.ui.basic.Atom;
+ f2.setLabel("hello world");
+ f2.setIcon("icon/32/actions/system-run.png");
+ f2.setIconPosition("left");
+ f2.setTop(350);
+ f2.setLeft(120);
+ f2.setPadding(2, 4);
+ f2.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ d.add(f2);
+ f2.setIconPosition("right");
+
+ var f3 = new qx.ui.basic.Atom;
+ f3.setLabel("hello world");
+ f3.setIcon("icon/32/actions/system-run.png");
+ f3.setIconPosition("left");
+ f3.setTop(350);
+ f3.setLeft(220);
+ f3.setPadding(2, 4);
+ f3.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ d.add(f3);
+ f3.setIconPosition("bottom");
+
+
+
+
+ var g1 = new qx.ui.basic.Atom;
+ g1.setLabel("hello world");
+ g1.setIcon("icon/32/actions/system-run.png");
+ g1.setIconPosition("top");
+ g1.setTop(450);
+ g1.setLeft(20);
+ g1.setPadding(2, 4);
+ g1.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ d.add(g1);
+ g1.setIconPosition("right");
+
+ var g2 = new qx.ui.basic.Atom;
+ g2.setLabel("hello world");
+ g2.setIcon("icon/32/actions/system-run.png");
+ g2.setIconPosition("top");
+ g2.setTop(450);
+ g2.setLeft(120);
+ g2.setPadding(2, 4);
+ g2.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ d.add(g2);
+ g2.setIconPosition("bottom");
+
+ var g3 = new qx.ui.basic.Atom;
+ g3.setLabel("hello world");
+ g3.setIcon("icon/32/actions/system-run.png");
+ g3.setIconPosition("top");
+ g3.setTop(450);
+ g3.setLeft(220);
+ g3.setPadding(2, 4);
+ g3.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ d.add(g3);
+ g3.setIconPosition("left");
+
+
+
+
+
+
+ var h1 = new qx.ui.basic.Atom;
+ h1.setLabel("hello world");
+ h1.setIcon("icon/32/actions/system-run.png");
+ h1.setIconPosition("left");
+ h1.setTop(520);
+ h1.setLeft(20);
+ h1.setPadding(2, 4);
+ h1.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ d.add(h1);
+ h1.setSpacing(20);
+
+
+ var h2 = new qx.ui.basic.Atom;
+ h2.setLabel("hello world");
+ h2.setIcon("icon/32/actions/system-run.png");
+ h2.setIconPosition("top");
+ h2.setTop(520);
+ h2.setLeft(150);
+ h2.setPadding(2, 4);
+ h2.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ d.add(h2);
+ h2.setSpacing(20);
+
+
+
+
+
+
+ var i1 = new qx.ui.basic.Atom;
+ i1.setLabel("hello world");
+ i1.setIcon("icon/32/actions/system-run.png");
+ i1.setIconPosition("left");
+ i1.setTop(600);
+ i1.setLeft(20);
+ i1.setPadding(2, 4);
+ i1.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ i1.setHeight(150);
+ i1.setWidth(150);
+ d.add(i1);
+
+ var i2 = new qx.ui.basic.Atom;
+ i2.setLabel("hello world");
+ i2.setIcon("icon/32/actions/system-run.png");
+ i2.setIconPosition("top");
+ i2.setTop(600);
+ i2.setLeft(200);
+ i2.setPadding(2, 4);
+ i2.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ i2.setWidth(150);
+ i2.setHeight(150);
+ d.add(i2);
+
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Atom_4.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Atom_4.html
new file mode 100644
index 0000000000..8e260675e6
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Atom_4.html
@@ -0,0 +1,53 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var icons = [
+ "apps/accessories-clock",
+ "categories/applications-graphics",
+ "apps/accessories-date",
+ "places/folder",
+ "apps/accessories-tip",
+ "apps/preferences-desktop-accessibility"
+ ];
+ var sizes = [ 16, 22, 32, 48, 64, 48, 32, 22, 16 ];
+
+ var atom;
+ var toppos = 48;
+
+ for (var j=0; j<sizes.length; j++)
+ {
+ for (var i=0; i<icons.length; i++)
+ {
+ atom = new qx.ui.basic.Atom("Atom " + (i+1) + "." + (j+1), "icon/" + sizes[j] + "/" + icons[i] + ".png");
+
+ atom.setTop(toppos);
+ atom.setLeft(20 + (120 *i));
+
+ d.add(atom);
+ };
+
+ toppos += sizes[j] + 20;
+ };
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Atom_5.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Atom_5.html
new file mode 100644
index 0000000000..7fa55f0fdf
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Atom_5.html
@@ -0,0 +1,43 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Adding many qx.ui.basic.Atom widgets without setting the icon-width and -height.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var atom;
+ var toppos = 48;
+
+ for (var i=0; i<20; i++)
+ {
+ for (var j=0; j<10; j++)
+ {
+ atom = new qx.ui.basic.Atom("Date", "icon/16/apps/accessories-date.png");
+
+ atom.setTop(toppos);
+ atom.setLeft(20 + (j*50));
+
+ d.add(atom);
+ };
+
+ toppos += 20;
+ };
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Atom_6.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Atom_6.html
new file mode 100644
index 0000000000..e750651489
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Atom_6.html
@@ -0,0 +1,43 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Adding many qx.ui.basic.Atom widgets setting the icon-width and -height.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var atom;
+ var toppos = 48;
+
+ for (var i=0; i<20; i++)
+ {
+ for (var j=0; j<10; j++)
+ {
+ atom = new qx.ui.basic.Atom("Date", "icon/16/apps/accessories-date.png", 16, 16);
+
+ atom.setTop(toppos);
+ atom.setLeft(20 + (j*50));
+
+ d.add(atom);
+ };
+
+ toppos += 20;
+ };
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Atom_7.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Atom_7.html
new file mode 100644
index 0000000000..d720d9a032
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Atom_7.html
@@ -0,0 +1,43 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var atom;
+ var toppos = 48;
+
+ for (var i=0; i<20; i++)
+ {
+ for (var j=0; j<10; j++)
+ {
+ atom = new qx.ui.basic.Atom(null, "icon/16/apps/accessories-date.png", 16, 16);
+
+ atom.setTop(toppos);
+ atom.setLeft(20 + (j*50));
+
+ d.add(atom);
+ };
+
+ toppos += 20;
+ };
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Atom_8.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Atom_8.html
new file mode 100644
index 0000000000..211b756dda
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Atom_8.html
@@ -0,0 +1,43 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var atom;
+ var toppos = 48;
+
+ for (var i=0; i<20; i++)
+ {
+ for (var j=0; j<10; j++)
+ {
+ atom = new qx.ui.basic.Atom("Date");
+
+ atom.setTop(toppos);
+ atom.setLeft(20 + (j*50));
+
+ d.add(atom);
+ };
+
+ toppos += 20;
+ };
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Atom_9.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Atom_9.html
new file mode 100644
index 0000000000..6eb49319e6
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Atom_9.html
@@ -0,0 +1,44 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ This uses qx.ui.basic.Label instead of qx.ui.basic.Atom for text only display. Stored as Atom test file
+ because this way we could compare it to the previous test file.
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var atom;
+ var toppos = 48;
+
+ for (var i=0; i<20; i++)
+ {
+ for (var j=0; j<10; j++)
+ {
+ atom = new qx.ui.basic.Label("Date");
+
+ atom.setTop(toppos);
+ atom.setLeft(20 + (j*50));
+
+ d.add(atom);
+ };
+
+ toppos += 20;
+ };
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Border_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Border_1.html
new file mode 100644
index 0000000000..173a5a05c9
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Border_1.html
@@ -0,0 +1,177 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Test for qx.renderer.border.Border, a cross-browser advanced border engine.
+ Each instance of qx.renderer.border.Border allows to affect multiple QxTerminators.
+ When the one property of the qx.renderer.border.Border change, it informs all bounded
+ QxTerminators to rerender the border.</p>
+
+ <p>The qx.renderer.border.Border constructor also allows you to convert a string
+ (css-like) into and qx.renderer.border.Border instance (last example).</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+
+
+ var c1 = new qx.ui.basic.Terminator;
+ with(c1)
+ {
+ setTop(48);
+ setLeft(20);
+ setWidth(150);
+ setHeight(40);
+ setBackgroundColor(new qx.renderer.color.Color("#fff"));
+ };
+ d.add(c1);
+
+ var c2 = new qx.ui.basic.Terminator;
+ with(c2)
+ {
+ setTop(48);
+ setLeft(200);
+ setWidth(150);
+ setHeight(40);
+ setBackgroundColor(new qx.renderer.color.Color("#fff"));
+ };
+ d.add(c2);
+
+ var b1 = new qx.renderer.border.Border;
+
+ // before set border properties
+ c1.setBorder(b1);
+
+ b1.setWidth(2);
+ b1.setStyle("solid");
+ b1.setColor(new qx.renderer.color.Color("black"));
+ b1.setBottomStyle("dotted");
+ b1.setTopColor(new qx.renderer.color.Color("blue"));
+
+ // after set border properties
+ c2.setBorder(b1);
+
+
+
+
+
+
+
+
+ var c3 = new qx.ui.basic.Terminator;
+ with(c3)
+ {
+ setTop(110);
+ setLeft(20);
+ setWidth(40);
+ setHeight(40);
+ setBackgroundColor(new qx.renderer.color.ColorObject("threedface"));
+ };
+ d.add(c3);
+
+ c3.setBorder(qx.renderer.border.BorderPresets.getInstance().thinInset);
+
+ var c4 = new qx.ui.basic.Terminator;
+ with(c4)
+ {
+ setTop(110);
+ setLeft(80);
+ setWidth(40);
+ setHeight(40);
+ setBackgroundColor(new qx.renderer.color.ColorObject("threedface"));
+ };
+ d.add(c4);
+
+ c4.setBorder(qx.renderer.border.BorderPresets.getInstance().thinOutset);
+
+ var c5 = new qx.ui.basic.Terminator;
+ with(c5)
+ {
+ setTop(110);
+ setLeft(140);
+ setWidth(40);
+ setHeight(40);
+ setBackgroundColor(new qx.renderer.color.ColorObject("threedface"));
+ };
+ d.add(c5);
+
+ c5.setBorder(qx.renderer.border.BorderPresets.getInstance().inset);
+
+
+ var c6 = new qx.ui.basic.Terminator;
+ with(c6)
+ {
+ setTop(110);
+ setLeft(200);
+ setWidth(40);
+ setHeight(40);
+ setBackgroundColor(new qx.renderer.color.ColorObject("threedface"));
+ };
+ d.add(c6);
+
+ c6.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+
+
+ var c7 = new qx.ui.basic.Terminator;
+ with(c7)
+ {
+ setTop(110);
+ setLeft(260);
+ setWidth(40);
+ setHeight(40);
+ setBackgroundColor(new qx.renderer.color.ColorObject("threedface"));
+ };
+ d.add(c7);
+
+ c7.setBorder(qx.renderer.border.BorderPresets.getInstance().groove);
+
+ var c8 = new qx.ui.basic.Terminator;
+ with(c8)
+ {
+ setTop(110);
+ setLeft(320);
+ setWidth(40);
+ setHeight(40);
+ setBackgroundColor(new qx.renderer.color.ColorObject("threedface"));
+ };
+ d.add(c8);
+
+ c8.setBorder(qx.renderer.border.BorderPresets.getInstance().ridge);
+
+
+
+ var c9 = new qx.ui.basic.Terminator;
+ with(c9)
+ {
+ setTop(110);
+ setLeft(380);
+ setWidth(40);
+ setHeight(40);
+ setBackgroundColor(new qx.renderer.color.ColorObject("threedface"));
+ };
+ d.add(c9);
+
+ var b2 = qx.renderer.border.Border.fromString("2px solid red");
+ c9.setBorder(b2);
+
+
+
+ // Color Themes
+ qx.manager.object.ColorManager.getInstance().createThemeList(d, 220, 248);
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/BoxLayout_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/BoxLayout_1.html
new file mode 100644
index 0000000000..b85f7224d3
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/BoxLayout_1.html
@@ -0,0 +1,283 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="testCommand" class="manualFrame">
+ <style type="text/css">
+ #testCommand{
+ position: absolute;
+ right: 335px;
+ bottom: 48px;
+ width: 350px;
+ }
+
+ .setform select{
+ font-size: 11px;
+ min-width: 75px;
+ }
+
+ .setform button{
+ font-size: 11px;
+ }
+ </style>
+
+ <table class="setform"><tbody>
+
+ <tr>
+ <td>
+ <label for="sel_orientation">Orientation:</label>
+ </td>
+ <td>
+ <select id="sel_orientation">
+ <option selected="selected">horizontal</option>
+ <option>vertical</option>
+ </select>
+ </td>
+ </tr>
+
+ <tr>
+ <td>Width/Height:</td>
+ <td>
+ <select id="sel_width">
+ <option>100</option>
+ <option selected="selected">250</option>
+ <option>500</option>
+ <option>auto</option>
+ </select>
+ <select id="sel_height">
+ <option>100</option>
+ <option selected="selected">250</option>
+ <option>500</option>
+ <option>auto</option>
+ </select>
+ </td>
+ </tr>
+
+ <tr>
+ <td>Spacing/Padding:</td>
+ <td>
+ <select id="sel_spacing">
+ <option selected="selected">0</option>
+ <option>2</option>
+ <option>4</option>
+ <option>8</option>
+ </select>
+ <select id="sel_padding">
+ <option selected="selected">0</option>
+ <option>2</option>
+ <option>4</option>
+ <option>8</option>
+ </select>
+ </td>
+ </tr>
+
+ <tr>
+ <td>
+ <label for="sel_order">Order/Stretching:</label>
+ </td>
+ <td>
+ <select id="sel_order">
+ <option selected="selected">default</option>
+ <option>reverse</option>
+ </select>
+ <select id="sel_stretch">
+ <option selected="selected">enabled</option>
+ <option>disabled</option>
+ </select>
+ </td>
+ </tr>
+
+ <tr>
+ <td>Horizontal/Vertical Align:</td>
+ <td>
+ <select id="sel_horalg">
+ <option selected="selected">left</option>
+ <option>center</option>
+ <option>right</option>
+ </select>
+ <select id="sel_veralg">
+ <option selected="selected">top</option>
+ <option>middle</option>
+ <option>bottom</option>
+ </select>
+ </td>
+ </tr>
+
+ <tr>
+ <td>&#160;</td>
+ <td>
+ <button id="btn_save">Apply</button>
+ </td>
+ </tr>
+
+ </tbody></table>
+
+ <p><b>Tests</b></p>
+ <ul>
+ <li><a href="javascript:test1()">Test 1: Remove blue widget</a></li>
+ <li><a href="javascript:test2()">Test 2: Add blue widget</a></li>
+ <li><a href="javascript:test3()">Test 3: Add blue widget at position 2</a></li>
+ <li><a href="javascript:test4()">Test 4: Add blue widget at position 4</a></li>
+ <li><a href="javascript:test5()">Test 5: Add green widget at before the cdrom</a></li>
+ <li><a href="javascript:test6()">Test 6: Add green widget at after the color palette</a></li>
+ <li><a href="javascript:test7()">Test 7: Add new widget to layout</a></li>
+ </ul>
+ </div>
+
+ <div id="demoDescription">
+ <p>Now something more complex. Try to configure multiple things and then press &lt;apply&gt;.</p>
+ </div>
+
+ <script type="text/javascript">
+
+ var bl, w1, w2, w3, w4, w5, w6, w7, w8;
+
+ var _b = document.getElementById("btn_save");
+ var _t = document.getElementById("sel_orientation");
+ var _w = document.getElementById("sel_width");
+ var _h = document.getElementById("sel_height");
+ var _s = document.getElementById("sel_spacing");
+ var _p = document.getElementById("sel_padding");
+ var _o = document.getElementById("sel_order");
+ var _r = document.getElementById("sel_stretch");
+ var _l = document.getElementById("sel_horalg");
+ var _v = document.getElementById("sel_veralg");
+
+ function save()
+ {
+ var vt = _t.options[_t.selectedIndex].firstChild.nodeValue;
+ var vw = _w.options[_w.selectedIndex].firstChild.nodeValue;
+ var vh = _h.options[_h.selectedIndex].firstChild.nodeValue;
+ var vs = _s.options[_s.selectedIndex].firstChild.nodeValue;
+ var vp = _p.options[_p.selectedIndex].firstChild.nodeValue;
+ var vo = _o.options[_o.selectedIndex].firstChild.nodeValue;
+ var vr = _r.options[_r.selectedIndex].firstChild.nodeValue;
+ var vl = _l.options[_l.selectedIndex].firstChild.nodeValue;
+ var vv = _v.options[_v.selectedIndex].firstChild.nodeValue;
+
+ bl.setOrientation(vt);
+ bl.setWidth(vw == "auto" ? vw : parseInt(vw));
+ bl.setHeight(vh == "auto" ? vh : parseInt(vh));
+ bl.setSpacing(parseInt(vs));
+ bl.setPadding(parseInt(vp));
+ bl.setReverseChildrenOrder(vo == "reverse");
+ bl.setStretchChildrenOrthogonalAxis(vr == "enabled");
+ bl.setHorizontalChildrenAlign(vl);
+ bl.setVerticalChildrenAlign(vv);
+ };
+
+ if (_b.attachEvent)
+ _b.attachEvent("onclick", save);
+ else if (_b.addEventListener)
+ _b.addEventListener("click", save, false);
+
+
+ function test1()
+ {
+ bl.remove(w2);
+ qx.ui.core.Widget.flushGlobalQueues();
+ };
+
+ function test2()
+ {
+ bl.add(w2);
+ qx.ui.core.Widget.flushGlobalQueues();
+ };
+
+ function test3()
+ {
+ bl.addAt(w2, 2);
+ qx.ui.core.Widget.flushGlobalQueues();
+ };
+
+ function test4()
+ {
+ bl.addAt(w2, 4);
+ qx.ui.core.Widget.flushGlobalQueues();
+ };
+
+ function test5()
+ {
+ bl.addBefore(w3, w7);
+ qx.ui.core.Widget.flushGlobalQueues();
+ };
+
+ function test6()
+ {
+ bl.addAfter(w3, w4);
+ qx.ui.core.Widget.flushGlobalQueues();
+ };
+
+ function test7()
+ {
+ bl.addAt(w8, 1);
+ qx.ui.core.Widget.flushGlobalQueues();
+ };
+
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ bl = new qx.ui.layout.BoxLayout("horizontal");
+ bl.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ bl.setBackgroundColor(new qx.renderer.color.Color("white"));
+ bl.setWidth(250);
+ bl.setHeight(250);
+ bl.setTop(48);
+ bl.setLeft(20);
+
+ w1 = new qx.ui.layout.CanvasLayout;
+ w1.setBackgroundColor(new qx.renderer.color.Color("orange"));
+ w1.setMinWidth(20);
+ w1.setMinHeight(20);
+ w1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+
+ w2 = new qx.ui.layout.CanvasLayout;
+ w2.setBackgroundColor(new qx.renderer.color.Color("blue"));
+ w2.setMinWidth(20);
+ w2.setMinHeight(20);
+ w2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+
+ w3 = new qx.ui.layout.CanvasLayout;
+ w3.setBackgroundColor(new qx.renderer.color.Color("green"));
+ w3.setMinWidth(20);
+ w3.setMinHeight(20);
+ w3.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+
+ w4 = new qx.ui.basic.Image("icon/32/actions/format-color.png");
+
+ w5 = new qx.ui.layout.CanvasLayout;
+ w5.setBackgroundColor(new qx.renderer.color.Color("yellow"));
+ w5.setMinWidth(20);
+ w5.setMinHeight(20);
+ w5.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+
+ w6 = new qx.ui.layout.CanvasLayout;
+ w6.setBackgroundColor(new qx.renderer.color.Color("red"));
+ w6.setMinWidth(20);
+ w6.setMinHeight(20);
+ w6.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+
+ w7 = new qx.ui.basic.Image("icon/64/devices/media-optical.png");
+
+ w8 = new qx.ui.layout.CanvasLayout;
+ w8.setBackgroundColor(new qx.renderer.color.Color("fuchsia"));
+ w8.setMinWidth(20);
+ w8.setMinHeight(20);
+ w8.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+
+ bl.add(w1, w2, w3, w4, w5, w6, w7);
+ d.add(bl);
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/BoxLayout_2.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/BoxLayout_2.html
new file mode 100644
index 0000000000..d228dc08bf
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/BoxLayout_2.html
@@ -0,0 +1,324 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="testCommand" class="manualFrame">
+ <style type="text/css">
+ #testCommand{
+ position: absolute;
+ right: 335px;
+ bottom: 48px;
+ width: 350px;
+ }
+
+ .setform select{
+ font-size: 11px;
+ min-width: 75px;
+ }
+
+ .setform button{
+ font-size: 11px;
+ }
+ </style>
+
+ <table class="setform"><tbody>
+
+ <tr>
+ <td>
+ <label for="sel_orientation">Orientation:</label>
+ </td>
+ <td>
+ <select id="sel_orientation">
+ <option selected="selected">horizontal</option>
+ <option>vertical</option>
+ </select>
+ </td>
+ </tr>
+
+ <tr>
+ <td>Width/Height:</td>
+ <td>
+ <select id="sel_width">
+ <option>100</option>
+ <option selected="selected">250</option>
+ <option>500</option>
+ <option>auto</option>
+ </select>
+ <select id="sel_height">
+ <option>100</option>
+ <option selected="selected">250</option>
+ <option>500</option>
+ <option>auto</option>
+ </select>
+ </td>
+ </tr>
+
+ <tr>
+ <td>Spacing/Padding:</td>
+ <td>
+ <select id="sel_spacing">
+ <option selected="selected">0</option>
+ <option>2</option>
+ <option>4</option>
+ <option>8</option>
+ </select>
+ <select id="sel_padding">
+ <option selected="selected">0</option>
+ <option>2</option>
+ <option>4</option>
+ <option>8</option>
+ </select>
+ </td>
+ </tr>
+
+ <tr>
+ <td>
+ <label for="sel_order">Order/Stretching:</label>
+ </td>
+ <td>
+ <select id="sel_order">
+ <option selected="selected">default</option>
+ <option>reverse</option>
+ </select>
+ <select id="sel_stretch">
+ <option selected="selected">enabled</option>
+ <option>disabled</option>
+ </select>
+ </td>
+ </tr>
+
+ <tr>
+ <td>Horizontal/Vertical Align:</td>
+ <td>
+ <select id="sel_horalg">
+ <option selected="selected">left</option>
+ <option>center</option>
+ <option>right</option>
+ </select>
+ <select id="sel_veralg">
+ <option selected="selected">top</option>
+ <option>middle</option>
+ <option>bottom</option>
+ </select>
+ </td>
+ </tr>
+
+ <tr>
+ <td>&#160;</td>
+ <td>
+ <button id="btn_save">Apply</button>
+ </td>
+ </tr>
+
+ </tbody></table>
+
+ <p><b>Tests</b></p>
+ <ul>
+ <li><a href="javascript:test1()">Test 1: Remove blue widget</a></li>
+ <li><a href="javascript:test2()">Test 2: Add blue widget</a></li>
+ <li><a href="javascript:test3()">Test 3: Add blue widget at position 2</a></li>
+ <li><a href="javascript:test4()">Test 4: Add blue widget at position 4</a></li>
+ <li><a href="javascript:test5()">Test 5: Add green widget at before the cdrom</a></li>
+ <li><a href="javascript:test6()">Test 6: Add green widget at after the color palette</a></li>
+ <li><a href="javascript:test7()">Test 7: Add new widget to layout</a></li>
+ </ul>
+ </div>
+
+ <div id="demoDescription">
+ <p>Now something more complex. Try to configure multiple things and then press &lt;apply&gt;.</p>
+ <p>Added initial support for children align override: Try to click on the color palette.</p>
+ </div>
+
+ <script type="text/javascript">
+
+ var bl, w1, w2, w3, w4, w5, w6, w7, w8;
+
+ var _b = document.getElementById("btn_save");
+ var _t = document.getElementById("sel_orientation");
+ var _w = document.getElementById("sel_width");
+ var _h = document.getElementById("sel_height");
+ var _s = document.getElementById("sel_spacing");
+ var _p = document.getElementById("sel_padding");
+ var _o = document.getElementById("sel_order");
+ var _r = document.getElementById("sel_stretch");
+ var _l = document.getElementById("sel_horalg");
+ var _v = document.getElementById("sel_veralg");
+
+ function save()
+ {
+ var vt = _t.options[_t.selectedIndex].firstChild.nodeValue;
+ var vw = _w.options[_w.selectedIndex].firstChild.nodeValue;
+ var vh = _h.options[_h.selectedIndex].firstChild.nodeValue;
+ var vs = _s.options[_s.selectedIndex].firstChild.nodeValue;
+ var vp = _p.options[_p.selectedIndex].firstChild.nodeValue;
+ var vo = _o.options[_o.selectedIndex].firstChild.nodeValue;
+ var vr = _r.options[_r.selectedIndex].firstChild.nodeValue;
+ var vl = _l.options[_l.selectedIndex].firstChild.nodeValue;
+ var vv = _v.options[_v.selectedIndex].firstChild.nodeValue;
+
+ bl.setOrientation(vt);
+ bl.setWidth(vw == "auto" ? vw : parseInt(vw));
+ bl.setHeight(vh == "auto" ? vh : parseInt(vh));
+ bl.setSpacing(parseInt(vs));
+ bl.setPadding(parseInt(vp));
+ bl.setReverseChildrenOrder(vo == "reverse");
+ bl.setStretchChildrenOrthogonalAxis(vr == "enabled");
+ bl.setHorizontalChildrenAlign(vl);
+ bl.setVerticalChildrenAlign(vv);
+ };
+
+ if (_b.attachEvent)
+ _b.attachEvent("onclick", save);
+ else if (_b.addEventListener)
+ _b.addEventListener("click", save, false);
+
+
+ function test1()
+ {
+ bl.remove(w2);
+ qx.ui.core.Widget.flushGlobalQueues();
+ };
+
+ function test2()
+ {
+ bl.add(w2);
+ qx.ui.core.Widget.flushGlobalQueues();
+ };
+
+ function test3()
+ {
+ bl.addAt(w2, 2);
+ qx.ui.core.Widget.flushGlobalQueues();
+ };
+
+ function test4()
+ {
+ bl.addAt(w2, 4);
+ qx.ui.core.Widget.flushGlobalQueues();
+ };
+
+ function test5()
+ {
+ bl.addBefore(w3, w7);
+ qx.ui.core.Widget.flushGlobalQueues();
+ };
+
+ function test6()
+ {
+ bl.addAfter(w3, w4);
+ qx.ui.core.Widget.flushGlobalQueues();
+ };
+
+ function test7()
+ {
+ bl.addAt(w8, 3);
+ qx.ui.core.Widget.flushGlobalQueues();
+ };
+
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ bl = new qx.ui.layout.BoxLayout("horizontal");
+ bl.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ bl.setBackgroundColor(new qx.renderer.color.Color("white"));
+ bl.setWidth(250);
+ bl.setHeight(250);
+ bl.setTop(48);
+ bl.setLeft(20);
+
+ w1 = new qx.ui.layout.CanvasLayout;
+ w1.setBackgroundColor(new qx.renderer.color.Color("orange"));
+ w1.setMinWidth(20);
+ w1.setMinHeight(20);
+ w1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w1.setAllowStretchX(false);
+ w1.setAllowStretchY(false);
+ w1.setVerticalAlign("middle");
+ w1.setHorizontalAlign("center");
+
+ w2 = new qx.ui.layout.CanvasLayout;
+ w2.setBackgroundColor(new qx.renderer.color.Color("blue"));
+ w2.setMinWidth(20);
+ w2.setMinHeight(20);
+ w2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w2.setAllowStretchX(false);
+ w2.setHorizontalAlign("center");
+
+ w3 = new qx.ui.layout.CanvasLayout;
+ w3.setBackgroundColor(new qx.renderer.color.Color("green"));
+ w3.setMinWidth(20);
+ w3.setMinHeight(20);
+ w3.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w3.setAllowStretchY(false);
+ w3.setVerticalAlign("middle");
+
+ w4 = new qx.ui.basic.Image("icon/32/actions/format-color.png");
+ w4.setVerticalAlign("bottom");
+ w4.setHorizontalAlign("right");
+
+ w5 = new qx.ui.layout.CanvasLayout;
+ w5.setBackgroundColor(new qx.renderer.color.Color("yellow"));
+ w5.setMinWidth(20);
+ w5.setMinHeight(20);
+ w5.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+
+ w6 = new qx.ui.layout.CanvasLayout;
+ w6.setBackgroundColor(new qx.renderer.color.Color("red"));
+ w6.setMinWidth(20);
+ w6.setMinHeight(20);
+ w6.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+
+ w7 = new qx.ui.basic.Image("icon/64/devices/media-optical.png");
+ w7.setVerticalAlign("middle");
+ w7.setHorizontalAlign("center");
+
+ w8 = new qx.ui.layout.CanvasLayout;
+ w8.setBackgroundColor(new qx.renderer.color.Color("fuchsia"));
+ w8.setMinWidth(20);
+ w8.setMinHeight(20);
+ w8.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+
+
+ w4.addEventListener("click", function()
+ {
+ var h, v;
+
+ switch(this.getHorizontalAlign())
+ {
+ case "center":
+ h = "right";
+ v = "bottom";
+ break;
+
+ case "right":
+ h = "left";
+ v = "top";
+ break;
+
+ default:
+ h = "center";
+ v = "middle";
+ };
+
+ this.setHorizontalAlign(h);
+ this.setVerticalAlign(v);
+ });
+
+
+
+ bl.add(w1, w2, w3, w4, w5, w6, w7);
+ d.add(bl);
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Builder_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Builder_1.html
new file mode 100644
index 0000000000..290bb6e8b0
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Builder_1.html
@@ -0,0 +1,73 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function() {
+ new qx.util.GuiBuilder().build(qx.ui.core.ClientDocument.getInstance(), document.getElementById('widgets'));
+ });
+
+ // test delegate object
+ var d = {
+ hello : 'world',
+ click : function(e) {
+ alert(e + '\n\nclick received at delegate object\n\n' + this.hello);
+ }
+ }
+
+ // test delegate function
+ var f = function(e) {
+ alert(e + '\n\nclick received at delegate function\n\n');
+ }
+ </script>
+ <div id="demoDescription">
+ <p>qx.util.GuiBuilder demo.</p>
+ <p>Build your web apps using qooxdooml.</p>
+ <p>Textarea example</p>
+ </div>
+ <textarea id='widgets' style='display:none'>
+ <qx.client.builder.Container>
+ <qx.ui.form.Button id='btn' label='Click Me!!!' location='20,50'>
+
+ <!-- function body event listener -->
+ <qx.client.builder.EventListener type='click' args='event'>
+ btn.setLabel(btn.getLabel() + ".");
+ alert(event + "\n\nClicked on: " + this.getLabel());
+ </qx.client.builder.EventListener>
+
+ <!--
+ global object.method delegation
+ when the button is clicked, d.click(event) will be called
+ -->
+ <qx.client.builder.EventListener type='click' delegate='d.click'/>
+
+ <!--
+ global function delegation
+ when the button is clicked, f(event) will be called
+ -->
+ <qx.client.builder.EventListener type='click' delegate='f'/>
+
+ </qx.ui.form.Button>
+ <qx.ui.basic.Atom id='atom1' label='Test No #1' icon='icon/16/apps/graphics-snapshot.png' border='qx.renderer.border.BorderPresets.getInstance().black' location='20,90'/>
+
+ <qx.ui.form.Button label='Test No #2' icon='icon/16/apps/graphics-snapshot.png' location='20,120'>
+ <qx.client.builder.EventListener type='click'>
+ atom1.setLabel(atom1.getLabel() + ".");
+ </qx.client.builder.EventListener>
+ </qx.ui.form.Button>
+ <qx.ui.basic.Atom label='Test No #3' icon='icon/16/apps/graphics-snapshot.png' location='20,160'/>
+ <qx.ui.basic.Atom label='a' icon='icon/16/apps/graphics-snapshot.png' location='20,200'/>
+ <qx.ui.basic.Atom label='b' icon='icon/16/apps/graphics-snapshot.png' location='20,240'/>
+ </qx.client.builder.Container>
+ </textarea>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Builder_2.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Builder_2.html
new file mode 100644
index 0000000000..d04ddbeb96
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Builder_2.html
@@ -0,0 +1,25 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function() {
+ new qx.util.GuiBuilder().buildFromUrl(qx.ui.core.ClientDocument.getInstance(), 'Builder_2.xml');
+ });
+ </script>
+ <div id="demoDescription">
+ <p>qx.util.GuiBuilder demo.</p>
+ <p>Build your web apps using qooxdooml.</p>
+ <p>XmlHttp Example</p>
+ </div>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Builder_2.xml b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Builder_2.xml
new file mode 100644
index 0000000000..e440ac2a3b
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Builder_2.xml
@@ -0,0 +1,51 @@
+<qx.client.builder.Container>
+ <qx.ui.form.Button id='btn' label='Click Me!!!' location='20,50'>
+
+ <!-- function body event listener -->
+ <qx.client.builder.EventListener type='click' args='event'>
+ btn.setLabel(btn.getLabel() + ".");
+ alert(event + "\n\nClicked on: " + this.getLabel());
+ </qx.client.builder.EventListener>
+
+ <!--
+ global object.method delegation
+ when the button is clicked, d.click(event) will be called
+ -->
+ <qx.client.builder.EventListener type='click' delegate='d.click'/>
+
+ <!--
+ global function delegation
+ when the button is clicked, f(event) will be called
+ -->
+ <qx.client.builder.EventListener type='click' delegate='f'/>
+
+ </qx.ui.form.Button>
+ <qx.ui.basic.Atom id='atom1' label='Test No #1' icon='icon/16/penguin.png' border='qx.renderer.border.BorderPresets.black' location='20,90'/>
+
+ <qx.ui.form.Button label='Test No #2' icon='icon/16/penguin.png' location='20,120'>
+ <qx.client.builder.EventListener type='click'>
+ atom1.setLabel(atom1.getLabel() + ".");
+ </qx.client.builder.EventListener>
+ </qx.ui.form.Button>
+
+ <qx.ui.basic.Atom label='Test No #3' icon='icon/16/penguin.png' location='20,160'/>
+
+ <qx.ui.basic.Atom label='a' icon='icon/16/penguin.png' location='20,200'/>
+ <qx.ui.basic.Atom label='b' icon='icon/16/penguin.png' location='20,240'/>
+
+
+ <qx.client.builder.Script>
+ // test delegate function
+ var f = function(e) {
+ alert(e + '\n\nclick received at delegate function\n\n');
+ }
+
+ // test delegate object
+ var d = {
+ hello : 'world',
+ click : function(e) {
+ alert(e + '\n\nclick received at delegate object\n\n' + this.hello);
+ }
+ }
+ </qx.client.builder.Script>
+</qx.client.builder.Container>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Builder_3.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Builder_3.html
new file mode 100644
index 0000000000..49254bf003
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Builder_3.html
@@ -0,0 +1,26 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function() {
+ new qx.util.GuiBuilder().buildFromUrl(qx.ui.core.ClientDocument.getInstance(), 'Builder_3.xml');
+ });
+ </script>
+ <div id="demoDescription">
+ <p>qx.util.GuiBuilder demo.</p>
+ <p>Build your web apps using qooxdooml.</p>
+ <p>Property Editor Example</p>
+ </div>
+</body>
+</html>
+
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Builder_3.xml b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Builder_3.xml
new file mode 100644
index 0000000000..8c1e95f382
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Builder_3.xml
@@ -0,0 +1,33 @@
+<qx.client.builder.Container>
+ <qx.ui.menu.Menu id='m2'>
+ <qx.ui.menu.Button label='New Window'/>
+ <qx.ui.menu.Button label='Overlapping'/>
+ <qx.ui.menu.Button label='Split Vertical'/>
+ <qx.ui.menu.Button label='Split Horizontal'/>
+ <qx.ui.menu.Button label='Next Window'/>
+ <qx.ui.menu.Button label='Previous Window'/>
+ </qx.ui.menu.Menu>
+
+ <qx.ui.menu.Menu id='m1'>
+ <qx.ui.menu.Button label='View/Lists'/>
+ <qx.ui.menu.Button label='Syntax Highlighting'/>
+ <qx.ui.menu.Separator/>
+ <qx.ui.menu.Button label='Window Font'/>
+ <qx.ui.menu.Button label='Printer Font' menu='m2'/>
+ </qx.ui.menu.Menu>
+
+ <qx.ui.form.Button id='btn' label='Reference Property' location='20,48'>
+ <qx.client.builder.EventListener type='click' args='e'>
+ var el = this.getElement();
+ m1.setLeft(qx.dom.Location.getPageBoxLeft(el));
+ m1.setTop(qx.dom.Location.getPageBoxBottom(el)); ;
+ m1.show();
+ e.setPropagationStopped(true);
+ </qx.client.builder.EventListener>
+ <qx.client.builder.EventListener type='mousedown' args='e'>
+ e.setPropagationStopped(true);
+ </qx.client.builder.EventListener>
+ </qx.ui.form.Button>
+
+ <qx.ui.basic.Atom label='Comma Delimited Property &amp; Eval Property ' location='140,48' backgroundColor='#BDD2EF' dimension='220,220' border='qx.renderer.border.BorderPresets.outset'/>
+</qx.client.builder.Container>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Builder_4.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Builder_4.html
new file mode 100644
index 0000000000..827129a64b
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Builder_4.html
@@ -0,0 +1,42 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function() {
+ new qx.util.GuiBuilder().build(qx.ui.core.ClientDocument.getInstance(), document.getElementById('widgets'));
+ });
+ </script>
+ <div id="demoDescription">
+ <p>qx.util.GuiBuilder demo.</p>
+ <p>2 Format Example</p>
+ </div>
+ <textarea id='widgets' style='display:none'>
+ <qx.client.builder.Container>
+ <qx.ui.basic.Atom id="linfo" label="Current Value" icon="icon/16/actions/go-next.png" border="qx.renderer.border.BorderPresets.getInstance().black" padding="2,4" backgroundColor="white" top="48" left="20"/>
+ <qx.manager.selection.RadioManager id='_rm1' name="mygroup">
+ <qx.client.builder.EventListener type='changeSelected' args='e'>
+ linfo.setLabel("Current Value: \"" + e.getData().getLabel() + "\" (" + e.getData().getValue() + ")");
+ </qx.client.builder.EventListener>
+ </qx.manager.selection.RadioManager>
+ <qx.ui.form.RadioButton qxtype="radioButton" label="Option #1" value="rb1" location="20,80" manager="_rm1"/>
+ <qx.ui.form.RadioButton label="Option #2" value="rb2" location="20,110" manager="_rm1" checked="true"/>
+ <div qxtype="qx.ui.form.RadioButton" label="Top RadioButton" value="rb3" location="20,160" manager="_rm1" iconPosition="top"/>
+ <qx.ui.form.RadioButton label="Bottom RadioButton" value="rb4" location="160,160" manager="_rm1" iconPosition="bottom"/>
+ <qx.ui.form.RadioButton label="Left RadioButton" value="rb5" location="20,220" manager="_rm1" iconPosition="left"/>
+ <qx.ui.form.RadioButton label="Right RadioButton" value="rb6" location="160,220" manager="_rm1" iconPosition="right"/>
+ <qx.ui.form.RadioButton value="rb7" location="20,280" manager="_rm1"/>
+ </qx.client.builder.Container>
+ </textarea>
+</body>
+</html>
+
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Button_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Button_1.html
new file mode 100644
index 0000000000..4627769566
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Button_1.html
@@ -0,0 +1,44 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Testing the new flash support for QxButtons (inherited from qx.ui.basic.Atom).</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+ var a;
+
+ for (var i=1; i<11; i++)
+ {
+ var b = new qx.ui.form.Button("Flash Button #" + i, "icon/16/actions/view-refresh.png", 16, 16, "./image/flash/color/file" + i + ".swf");
+
+ b.setTop(48 + ((i-1)*30));
+ b.setLeft(20);
+
+ d.add(b);
+ };
+
+ var b = new qx.ui.form.Button("Big Rotated", "icon/48/actions/view-refresh.png", 48, 48, "./image/flash/color/file3.swf");
+
+ b.setTop(48);
+ b.setLeft(200);
+ b.setIconPosition("top");
+
+ d.add(b);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/CSS_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/CSS_1.html
new file mode 100644
index 0000000000..fd60f55c0b
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/CSS_1.html
@@ -0,0 +1,110 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+
+ <style type="text/css">
+
+ .box {
+ position: absolute;
+ width: 100px;
+ height: 100px;
+ left: 30px;
+ top: 40px;
+ color: white;
+ padding: 5px;
+ }
+
+ #box1 {
+ background-color: red;
+ }
+
+ #box2 {
+ background-color: blue;
+ top: 200px;
+ left: 100px;
+ }
+
+ </style>
+
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Some tests of qx.html.StyleSheet</p>
+ </div>
+
+
+ <div id="box1" class="box">
+ Box 1
+ </div>
+
+ <div id="box2" class="box">
+ Box 2
+ </div>
+
+ <div style="display:none" id="control">
+ <p>
+ <h3>Box 1</h3>
+ <a href="javascript://" onclick="qx.html.StyleSheet.addRule(sheet, '#box1', 'background-color:green !important');">qx.html.StyleSheet.addRule(style, '#box1', 'background-color:green !important')</a> <br>
+ <a href="javascript://" onclick="qx.html.StyleSheet.removeRule(sheet, '#box1');">qx.html.StyleSheet.removeRule(sheet, '#box1')</a> <br>
+ </p>
+ <h3>Box 1</h3>
+ <a href="javascript://" onclick="qx.html.StyleSheet.addRule(sheet, '#box2', 'background-color:yellow !important');">qx.html.StyleSheet.addRule(style, '#box2', 'background-color:yellow !important')</a> <br>
+ <a href="javascript://" onclick="qx.html.StyleSheet.removeRule(sheet, '#box2');">qx.html.StyleSheet.removeRule(sheet, '#box2')</a> <br>
+ <p>
+ <h3>All</h3>
+ <a href="javascript://" onclick="qx.html.StyleSheet.removeAllRules(sheet)">qx.html.StyleSheet.removeAllRules(sheet)</a> <br>
+ </p>
+ <p>
+ <h3>Import</h3>
+ add Import <br>
+ <a href="javascript://" onclick="qx.html.StyleSheet.addImport(sheet, 'bigFont.css')">qx.html.StyleSheet.addImport(sheet, 'bigFont.css')</a> <br>
+ <a href="javascript://" onclick="qx.html.StyleSheet.addImport(sheet, 'boldFont.css')">qx.html.StyleSheet.addImport(sheet, 'boldFont.css')</a> <br>
+ remove Import<br>
+ <a href="javascript://" onclick="qx.html.StyleSheet.removeImport(sheet, 'bigFont.css')">qx.html.StyleSheet.removeImport(sheet, 'bigFont.css')</a> <br>
+ <a href="javascript://" onclick="qx.html.StyleSheet.removeImport(sheet, 'boldFont.css')">qx.html.StyleSheet.removeImport(sheet, 'boldFont.css')</a> <br>
+ remove all Imports<br>
+ <a href="javascript://" onclick="qx.html.StyleSheet.removeAllImports(sheet)">qx.html.StyleSheet.removeAllImports(sheet)</a> <br>
+ </p>
+
+ </div>
+
+ <script type="text/javascript">
+
+ var sheet = qx.html.StyleSheet.createElement();
+
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var ct1 = new qx.ui.basic.Label(document.getElementById("control").innerHTML);
+
+ with(ct1)
+ {
+ setWidth(450);
+ setRight(335);
+
+ setHeight(null);
+ setTop(48);
+ setBottom(48);
+
+ setOverflow("auto");
+
+ setBackgroundColor(new qx.renderer.color.Color("white"));
+ setBorder(qx.renderer.border.BorderPresets.getInstance().groove);
+ setPadding(10);
+ };
+
+ d.add(ct1);
+ });
+
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/CanvasLayout_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/CanvasLayout_1.html
new file mode 100644
index 0000000000..a53950bb73
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/CanvasLayout_1.html
@@ -0,0 +1,616 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var w1 = new qx.ui.layout.CanvasLayout;
+
+ w1.setWidth(100);
+ w1.setHeight(100);
+ w1.setLeft(100);
+ w1.setTop(100);
+ w1.setBackgroundColor(new qx.renderer.color.Color("red"));
+
+ d.add(w1);
+
+
+
+
+
+
+ var w2 = new qx.ui.layout.CanvasLayout;
+
+ w2.setWidth("25%");
+ w2.setHeight(100);
+ w2.setLeft(200);
+ w2.setTop(200);
+ w2.setBackgroundColor(new qx.renderer.color.Color("blue"));
+
+ d.add(w2);
+
+
+
+ var w3 = new qx.ui.layout.CanvasLayout;
+
+ w3.setRight(400);
+ w3.setHeight(100);
+ w3.setLeft(300);
+ w3.setTop(300);
+ w3.setBackgroundColor(new qx.renderer.color.Color("green"));
+
+ d.add(w3);
+
+
+
+
+
+ var w4 = new qx.ui.layout.CanvasLayout;
+
+ w4.setLeft(10);
+ w4.setRight(10);
+ w4.setTop(10);
+ w4.setBottom(10);
+ w4.setBackgroundColor(new qx.renderer.color.Color("white"));
+
+ w2.add(w4);
+
+
+
+
+
+ var w5 = new qx.ui.layout.CanvasLayout;
+
+ w5.setLeft(0);
+ w5.setTop(0);
+ w5.setWidth("50%");
+ w5.setHeight(50);
+ w5.setBackgroundColor(new qx.renderer.color.Color("white"));
+
+ w3.add(w5);
+
+
+
+
+ var w6 = new qx.ui.layout.CanvasLayout;
+
+ w6.setBottom(50);
+ w6.setLeft(350);
+ w6.setHeight("30%");
+ w6.setWidth(50);
+ w6.setBackgroundColor(new qx.renderer.color.Color("yellow"));
+ w6.setZIndex(100);
+ w6.setMinHeight(100);
+ w6.setMaxHeight(150);
+
+ d.add(w6);
+
+
+
+ var w7 = new qx.ui.layout.CanvasLayout;
+
+ w7.setTop(150);
+ w7.setLeft(20);
+ w7.setWidth(100);
+ w7.setHeight(100);
+ w7.setBackgroundColor(new qx.renderer.color.Color("aqua"));
+ w7.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+
+ d.add(w7);
+
+
+
+ var w8 = new qx.ui.layout.CanvasLayout;
+
+ w8.setTop(280);
+ w8.setLeft(20);
+ w8.setWidth("auto");
+ w8.setHeight("auto");
+ w8.setBackgroundColor(new qx.renderer.color.Color("fuchsia"));
+ w8.setBorder(new qx.renderer.border.Border(5, "solid", new qx.renderer.color.Color("black")));
+ w8.setPaddingTop(10);
+
+ //w8.getBorder().setLeftWidth(20);
+ //w8.getBorder().setLeftWidth(0);
+
+ // d.add(w8);
+
+
+ var w9 = new qx.ui.layout.CanvasLayout;
+
+ w9.setTop(0);
+ w9.getLeft(0);
+ w9.setWidth(40);
+ w9.setHeight(20);
+ w9.setBackgroundColor(new qx.renderer.color.Color("white"));
+
+ w8.add(w9);
+
+
+
+ var w10 = new qx.ui.layout.CanvasLayout;
+
+ w10.setTop(0);
+ w10.getLeft(0);
+ w10.setWidth(10);
+ w10.setHeight(50);
+ w10.setBackgroundColor(new qx.renderer.color.Color("red"));
+
+ w8.add(w10);
+
+ d.add(w8);
+
+
+
+
+
+
+ var w11 = new qx.ui.layout.CanvasLayout;
+
+ w11.setTop(200);
+ w11.setLeft(40);
+ w11.setWidth("auto");
+ w11.setHeight("auto");
+ w11.setBackgroundColor(new qx.renderer.color.Color("green"));
+ w11.setDisplay(false);
+ w11.setBorder(qx.renderer.border.BorderPresets.getInstance().white);
+ w11.setPaddingLeft(20);
+
+ d.add(w11);
+
+ w8.addEventListener("click", function(e) {
+ w11.toggleDisplay();
+ });
+
+
+ /*
+ w11.addEventListener("show", function(e) {
+ this.debug("Show W11");
+ });
+
+ w11.addEventListener("hide", function(e) {
+ this.debug("Hide W11");
+ });
+ */
+
+
+ var w12 = new qx.ui.basic.Image("icon/64/energy.png");
+ w11.add(w12);
+
+
+
+
+ var w12 = new qx.ui.basic.Image("icon/48/apps/accessories-clock.png");
+
+ w12.setTop(350);
+ w12.setLeft(20);
+
+ d.add(w12);
+
+
+ var w13 = new qx.ui.basic.Image("icon/48/apps/accessories-alarm.png");
+
+ w13.setTop(350);
+ w13.setLeft(80);
+
+ d.add(w13);
+
+
+
+
+
+ var w14 = new qx.ui.layout.CanvasLayout;
+
+ w14.setTop(400);
+ w14.setLeft(20);
+ w14.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ //w14.setWidth("auto");
+ w14.setMinWidth("auto");
+ w14.setWidth("30%");
+
+ w14.setHeight("auto");
+ w14.setPadding(10);
+ w14.setBackgroundColor(new qx.renderer.color.Color("white"));
+
+ d.add(w14);
+
+
+ var w15 = new qx.ui.basic.Image("icon/48/apps/accessories-clock.png");
+
+ w15.setTop(0);
+ w15.setLeft(20);
+
+ w14.add(w15);
+
+
+ var w16 = new qx.ui.basic.Image("icon/128/apps/accessories-date.png");
+
+ w16.setTop(20);
+ w16.setLeft(80);
+
+ w14.add(w16);
+
+
+ var w16a = new qx.ui.layout.CanvasLayout;
+
+ w16a.setMarginTop(160);
+ w16a.setBottom(20);
+ w16a.setRight(20);
+
+ w16a.setBackgroundColor(new qx.renderer.color.Color("yellow"));
+
+ w16a.setWidth(30);
+ w16a.setHeight(30);
+
+ w14.add(w16a);
+
+
+
+ w16a.addEventListener("click", function(e)
+ {
+ var v16Margin = w16a.getMarginTop() + 20;
+ if (v16Margin > 240) {
+ v16Margin = 100;
+ };
+
+ w16a.setMarginTop(v16Margin);
+ });
+
+
+
+
+ var w17_b1 = new qx.renderer.border.Border(5, "solid", new qx.renderer.color.Color("black"));
+ var w17_b2 = new qx.renderer.border.Border(10, "solid", new qx.renderer.color.Color("black"));
+
+ var w17_p1 = 10;
+ var w17_p2 = 5;
+
+ var w17 = new qx.ui.layout.CanvasLayout;
+
+ w17.setBackgroundColor(new qx.renderer.color.Color("orange"));
+ w17.setWidth(50);
+ w17.setHeight(50);
+ w17.setTop(50);
+ w17.setLeft(200);
+
+ w17.setBorder(w17_b1);
+ w17.setPadding(w17_p1);
+
+ d.add(w17);
+
+
+ w17.addEventListener("click", function(e)
+ {
+ if (w17.getBorder() == w17_b1)
+ {
+ w17.setBorder(w17_b2);
+ w17.setPadding(w17_p2);
+ }
+ else
+ {
+ w17.setBorder(w17_b1);
+ w17.setPadding(w17_p1);
+ };
+ });
+
+
+ var w18 = new qx.ui.layout.CanvasLayout;
+
+ w18.setBackgroundColor(new qx.renderer.color.Color("white"));
+ w18.setWidth("100%");
+ w18.setHeight("100%");
+ w18.setLeft(0);
+ w18.setTop(0);
+
+ w17.add(w18);
+
+
+
+
+
+
+
+
+
+ var w19_b1 = new qx.renderer.border.Border(5, "solid", new qx.renderer.color.Color("black"));
+
+ var w19_p1 = 10;
+ var w19_p2 = 5;
+
+ var w19 = new qx.ui.layout.CanvasLayout;
+
+ w19.setBackgroundColor(new qx.renderer.color.Color("orange"));
+ w19.setWidth(50);
+ w19.setHeight(50);
+ w19.setTop(50);
+ w19.setLeft(270);
+
+ w19.setBorder(w19_b1);
+ w19.setPadding(w19_p1);
+
+ d.add(w19);
+
+
+ var _t22 = true;
+ w19.addEventListener("click", function(e)
+ {
+ if (_t22)
+ {
+ w19_b1.setWidth(10);
+ w19.setPadding(w19_p2);
+ }
+ else
+ {
+ w19_b1.setWidth(5);
+ w19.setPadding(w19_p1);
+ };
+
+ _t22 = !_t22;
+ });
+
+
+ var w20 = new qx.ui.layout.CanvasLayout;
+
+ w20.setBackgroundColor(new qx.renderer.color.Color("white"));
+ w20.setWidth("100%");
+ w20.setHeight("100%");
+ w20.setLeft(0);
+ w20.setTop(0);
+
+ w19.add(w20);
+
+
+
+
+
+ var w21_b1 = new qx.renderer.border.Border(5, "solid", new qx.renderer.color.Color("black"));
+ var w21_b2 = new qx.renderer.border.Border(5, "solid", new qx.renderer.color.Color("blue"));
+
+ var w21 = new qx.ui.layout.CanvasLayout;
+
+ w21.setBackgroundColor(new qx.renderer.color.Color("orange"));
+ w21.setWidth(50);
+ w21.setHeight(50);
+ w21.setTop(50);
+ w21.setLeft(340);
+
+ w21.setBorder(w21_b1);
+ w21.setPadding(10);
+
+ d.add(w21);
+
+
+ w21.addEventListener("click", function(e)
+ {
+ if (w21.getBorder() == w21_b1)
+ {
+ w21.setBorder(w21_b2);
+ }
+ else
+ {
+ w21.setBorder(w21_b1);
+ };
+ });
+
+
+ var w22 = new qx.ui.layout.CanvasLayout;
+
+ w22.setBackgroundColor(new qx.renderer.color.Color("white"));
+ w22.setWidth("100%");
+ w22.setHeight("100%");
+ w22.setLeft(0);
+ w22.setTop(0);
+
+ w21.add(w22);
+
+
+
+
+
+
+
+ var w23_b1 = new qx.renderer.border.BorderObject(5, "solid", new qx.renderer.color.Color("black"));
+
+ var w23 = new qx.ui.layout.CanvasLayout;
+
+ w23.setBackgroundColor(new qx.renderer.color.Color("orange"));
+ w23.setWidth(50);
+ w23.setHeight(50);
+ w23.setTop(50);
+ w23.setLeft(410);
+
+ w23.setBorder(w23_b1);
+ w23.setPadding(10);
+
+ d.add(w23);
+
+ w23.addEventListener("mouseover", function(e)
+ {
+ w23_b1.setColor(new qx.renderer.color.Color("blue"));
+ w23_b1.setStyle("dotted");
+ });
+
+ w23.addEventListener("mouseout", function(e)
+ {
+ w23_b1.setColor(new qx.renderer.color.Color("black"));
+ w23_b1.setStyle("solid");
+ });
+
+ var w24 = new qx.ui.layout.CanvasLayout;
+
+ w24.setBackgroundColor(new qx.renderer.color.Color("white"));
+ w24.setWidth("100%");
+ w24.setHeight("100%");
+ w24.setLeft(0);
+ w24.setTop(0);
+ w24.setAnonymous(true);
+
+ w23.add(w24);
+
+
+
+
+
+
+ var w25_b1 = qx.renderer.border.BorderPresets.getInstance().outset;
+ var w25_b2 = qx.renderer.border.BorderPresets.getInstance().inset;
+
+ var w25_p1 = 10;
+ var w25_p2 = 5;
+
+ var w25 = new qx.ui.layout.CanvasLayout;
+
+ w25.setBackgroundColor(new qx.renderer.color.ColorObject("ThreeDFace"));
+ w25.setWidth(50);
+ w25.setHeight(50);
+ w25.setTop(50);
+ w25.setLeft(480);
+
+ w25.setBorder(w25_b1);
+ w25.setPadding(w25_p1);
+
+ d.add(w25);
+
+
+ w25.addEventListener("click", function(e)
+ {
+ if (w25.getBorder() == w25_b1)
+ {
+ w25.setBorder(w25_b2);
+ w25.setPadding(w25_p2);
+ }
+ else
+ {
+ w25.setBorder(w25_b1);
+ w25.setPadding(w25_p1);
+ };
+ });
+
+
+ var w26 = new qx.ui.layout.CanvasLayout;
+
+ w26.setBackgroundColor(new qx.renderer.color.Color("white"));
+ w26.setWidth("100%");
+ w26.setHeight("100%");
+ w26.setLeft(0);
+ w26.setTop(0);
+
+ w25.add(w26);
+
+
+
+
+
+
+
+ var w27 = new qx.ui.layout.CanvasLayout;
+
+ w27.setBackgroundColor(new qx.renderer.color.ColorObject("ThreeDFace"));
+ w27.setWidth(50);
+ w27.setHeight(50);
+ w27.setTop(50);
+ w27.setLeft(550);
+
+ w27.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ w27.setPadding(10, 10, 10, 10);
+
+ d.add(w27);
+
+
+ w27.addEventListener("click", function(e)
+ {
+ if (w27.getBorder() == qx.renderer.border.BorderPresets.getInstance().outset)
+ {
+ w27.setBorder(qx.renderer.border.BorderPresets.getInstance().inset);
+ w27.setPadding(12, 8, 8, 12);
+ }
+ else
+ {
+ w27.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ w27.setPadding(10, 10, 10, 10);
+ };
+ });
+
+
+ var w28 = new qx.ui.layout.CanvasLayout;
+
+ w28.setBackgroundColor(new qx.renderer.color.Color("white"));
+ w28.setWidth("100%");
+ w28.setHeight("100%");
+ w28.setLeft(0);
+ w28.setTop(0);
+
+ w27.add(w28);
+
+
+
+
+
+
+
+ var w29_b1 = qx.renderer.border.BorderPresets.getInstance().outset;
+ var w29_b2 = qx.renderer.border.BorderPresets.getInstance().inset;
+
+ var w29_p1 = 10;
+ var w29_p2 = 5;
+
+ var w29 = new qx.ui.layout.CanvasLayout;
+
+ w29.setBackgroundColor(new qx.renderer.color.ColorObject("ThreeDFace"));
+ w29.setWidth(50);
+ w29.setHeight(50);
+ w29.setTop(50);
+ w29.setLeft(620);
+
+ w29.setBorder(w29_b1);
+ w29.setPadding(w29_p1);
+
+ d.add(w29);
+
+
+ w29.addEventListener("click", function(e)
+ {
+ if (w29.getBorder() == w29_b1)
+ {
+ w29.setBorder(w29_b2);
+ w29.setPadding(w29_p2);
+ }
+ else
+ {
+ w29.setBorder(w29_b1);
+ w29.setPadding(w29_p1);
+ };
+ });
+
+
+ var w30 = new qx.ui.layout.CanvasLayout;
+
+ w30.setBackgroundColor(new qx.renderer.color.Color("white"));
+ w30.setLeft(0);
+ w30.setRight(0);
+ w30.setTop(0);
+ w30.setBottom(0);
+
+ w29.add(w30);
+
+
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/CanvasLayout_3.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/CanvasLayout_3.html
new file mode 100644
index 0000000000..ae17a92964
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/CanvasLayout_3.html
@@ -0,0 +1,52 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>This test is using multiple qx.ui.basic.Terminator</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+ var w, s;
+
+
+
+ for (var i=1; i<=20; i++)
+ {
+ s = new Date().valueOf();
+
+ for (var j=1; j<=20; j++)
+ {
+ var w = new qx.ui.basic.Terminator;
+
+ w.setWidth(12);
+ w.setHeight(12);
+ w.setLeft(20+(12*i));
+ w.setTop(48+(12*j));
+ w.setBackgroundColor(new qx.renderer.color.Color(Math.round(20+(i*j)/2)));
+
+ d.add(w);
+ };
+
+ // this.debug("Col: " + ((new Date).valueOf()-s) + "ms");
+ };
+
+
+
+
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/CanvasLayout_4.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/CanvasLayout_4.html
new file mode 100644
index 0000000000..e3157be47f
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/CanvasLayout_4.html
@@ -0,0 +1,50 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>This test is using multiple div-Elements</p>
+ <p>Created with "createElement" and added via "appendChild" to the document.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+ var w;
+ var v;
+
+ for (var i=1; i<=20; i++)
+ {
+ for (var j=1; j<=20; j++)
+ {
+ var w = document.createElement("div");
+
+ w.className = "qx_ui_core_Widget_QxWidgetCore";
+ w.id = "Auto" + i + "|" + j;
+
+ w.style.width = "12px";
+ w.style.height = "12px";
+ w.style.position = "absolute";
+ w.style.left = (20+(12*i)) + "px";
+ w.style.top = (48+(12*j)) + "px";
+
+ v = Math.round(20+(i*j)/2);
+ w.style.backgroundColor = "rgb(" + v + "," + v + "," + v + ")";
+
+ document.body.appendChild(w);
+ };
+ };
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/CanvasLayout_5.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/CanvasLayout_5.html
new file mode 100644
index 0000000000..49f66f4715
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/CanvasLayout_5.html
@@ -0,0 +1,45 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>This test is using multiple div-Elements</p>
+ <p>Added to the document using the "innerHTML" property.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+ var w;
+ var v;
+ var h = [];
+
+ for (var i=1; i<=20; i++)
+ {
+ for (var j=1; j<=20; j++)
+ {
+ h.push("<div style='width:12px;height:12px;position:absolute;");
+ h.push("left:" + (20+(12*i)) + "px;");
+ h.push("top:" + (48+(12*j)) + "px;");
+
+ v = Math.round(20+(i*j)/2);
+ h.push("background-color:" + "rgb(" + v + "," + v + "," + v + ")");
+ h.push("' class='qx_ui_core_Widget_QxWidgetCore' id='Auto" + i + "|" + j + "'></div>");
+ };
+ };
+
+ document.body.innerHTML += h.join("");
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Clipping_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Clipping_1.html
new file mode 100644
index 0000000000..e7d8b1afd6
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Clipping_1.html
@@ -0,0 +1,76 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Tests for clipping implementation</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var t1 = new qx.ui.basic.Terminator;
+
+ t1.setBackgroundColor("red");
+ t1.setLocation(20, 48);
+ t1.setDimension(100, 100);
+ t1.setBorder(2, "solid", "black");
+ t1.setClipLocation(0, 0);
+ t1.setClipDimension(50, 50);
+
+ d.add(t1);
+
+
+
+ var t2 = new qx.ui.basic.Terminator;
+
+ t2.setBackgroundColor("yellow");
+ t2.setLocation(200, 48);
+ t2.setDimension(100, 100);
+ t2.setBorder(2, "solid", "black");
+ t2.setClipLocation(25, 25);
+ t2.setClipDimension(50, 50);
+
+ d.add(t2);
+
+
+
+ var t3 = new qx.ui.basic.Terminator;
+
+ t3.setBackgroundColor("blue");
+ t3.setLocation(20, 248);
+ t3.setDimension(100, 100);
+ t3.setBorder(2, "solid", "black");
+ t3.setClipLocation(50, 50);
+ t3.setClipDimension(50, 50);
+
+ d.add(t3);
+
+
+
+
+ var t4 = new qx.ui.basic.Terminator;
+
+ t4.setBackgroundColor("orange");
+ t4.setLocation(200, 248);
+ t4.setDimension(100, 100);
+ t4.setBorder(2, "solid", "black");
+ t4.setClip(25, 25, null, null);
+
+ d.add(t4);
+
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Clone_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Clone_1.html
new file mode 100644
index 0000000000..22ee1697c9
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Clone_1.html
@@ -0,0 +1,91 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Test widget cloning.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var c1 = new qx.ui.layout.CanvasLayout;
+
+ with(c1)
+ {
+ setWidth(200);
+
+ setTop(48);
+ setLeft(20);
+
+ setHeight(100);
+ setBackgroundColor("orange");
+ };
+
+ d.add(c1);
+
+
+ var c2 = c1.clone();
+
+ with(c2)
+ {
+ setLeft(30);
+ setTop(58);
+
+ setBackgroundColor("green");
+ };
+ d.add(c2);
+
+ var c3 = c2.clone(false, ["top","left","width","height"]);
+
+ with(c3)
+ {
+ setLeft(40);
+ setTop(68);
+
+ setBackgroundColor("blue");
+ };
+ d.add(c3);
+
+
+
+
+
+ var a1 = new qx.ui.basic.Atom("First Atom", "icon/48/apps/accessories-clock.png");
+
+ with(a1)
+ {
+ setTop(200);
+ setLeft(20);
+ setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+
+ setPadding(5);
+ };
+
+ d.add(a1);
+
+
+
+ var a2 = a1.clone(true);
+
+ with(a2)
+ {
+ setLeft(200);
+ };
+
+
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Clone_2.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Clone_2.html
new file mode 100644
index 0000000000..c3f60be97b
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Clone_2.html
@@ -0,0 +1,108 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Testfile for check cloning on QxFieldSets.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var fs = new qx.ui.groupbox.GroupBox("My first Fieldset");
+
+ with(fs)
+ {
+ setWidth("40%");
+ setBottom(48);
+ setTop(48);
+ setLeft(20);
+
+ setMaxWidth(350);
+ setMinWidth(250);
+ };
+
+
+
+ var a1 = new qx.ui.basic.Atom("TextField 1");
+ with(a1)
+ {
+ setTop(13);
+ setLeft(0);
+ setWidth("35%");
+ };
+
+ var i1 = new qx.ui.form.TextField();
+ with(i1)
+ {
+ setTop(10);
+ setRight(0);
+ setWidth("60%");
+ };
+ fs.add(a1, i1);
+
+
+
+ var a2 = new qx.ui.basic.Atom("TextField 2", "icon/16/apps/internet-email-client.png");
+ with(a2)
+ {
+ setTop(43);
+ setLeft(0);
+ setWidth("35%");
+ };
+ fs.add(a2);
+
+ var i2 = new qx.ui.form.TextField();
+ with(i2)
+ {
+ setTop(40);
+ setRight(0);
+ setWidth("60%");
+ };
+ fs.add(i2);
+
+
+
+ var a3 = new qx.ui.basic.Atom("TextField 3");
+ with(a3)
+ {
+ setTop(73);
+ setLeft(0);
+ setWidth("35%");
+ };
+ fs.add(a3);
+
+ var i3 = new qx.ui.form.TextField();
+ with(i3)
+ {
+ setTop(70);
+ setRight(0);
+ setWidth("60%");
+ };
+ fs.add(i3);
+
+
+ d.add(fs);
+
+
+ fsclone = fs.clone(true);
+ with(fsclone)
+ {
+ setLeft(400);
+ setLegend("My cloned Fieldset");
+ };
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ColorTheme_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ColorTheme_1.html
new file mode 100644
index 0000000000..38b90ba19f
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ColorTheme_1.html
@@ -0,0 +1,235 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Color Theme Test</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var w1 = new qx.ui.basic.Terminator;
+
+ w1.setWidth(100);
+ w1.setHeight(100);
+ w1.setBackgroundColor(new qx.renderer.color.Color("yellow"));
+ w1.setTop(48);
+ w1.setLeft(20);
+
+ d.add(w1);
+
+
+
+ var w2 = new qx.ui.basic.Terminator;
+
+ w2.setWidth(100);
+ w2.setHeight(100);
+ w2.setBackgroundColor(new qx.renderer.color.ColorObject("activecaption"));
+ w2.setTop(48);
+ w2.setLeft(150);
+
+ d.add(w2);
+
+
+
+
+ var w3 = new qx.ui.basic.Terminator;
+
+ w3.setWidth(100);
+ w3.setHeight(100);
+ w3.setBackgroundColor("red");
+ w3.setTop(200);
+ w3.setLeft(20);
+
+ d.add(w3);
+
+
+
+ var w4 = new qx.ui.basic.Terminator;
+
+ w4.setWidth(100);
+ w4.setHeight(100);
+ w4.setBackgroundColor("red");
+ w4.setTop(200);
+ w4.setLeft(150);
+
+ d.add(w4);
+
+
+
+
+ var w5 = new qx.ui.basic.Label("Hello World");
+
+ w5.setTop(320);
+ w5.setLeft(20);
+ w5.setColor("red");
+
+ d.add(w5);
+
+
+
+
+
+ var w6 = new qx.ui.basic.Terminator;
+
+ w6.setWidth(100);
+ w6.setHeight(100);
+ w6.setBackgroundColor("activecaption");
+ w6.setTop(400);
+ w6.setLeft(20);
+
+ d.add(w6);
+
+
+
+ var w7 = new qx.ui.basic.Terminator;
+
+ w7.setWidth(100);
+ w7.setHeight(100);
+ w7.setBackgroundColor("activeCaption");
+ w7.setTop(400);
+ w7.setLeft(150);
+
+ d.add(w7);
+
+
+
+
+ var w8 = new qx.ui.basic.Label("Hello World");
+
+ w8.setTop(520);
+ w8.setLeft(20);
+ w8.setColor("ActiveCaption");
+
+ d.add(w8);
+
+
+
+
+
+
+
+ var w9 = new qx.ui.basic.Atom("Super qooxdoo", "icon/48/apps/preferences-desktop-multimedia.png");
+
+ w9.setTop(520);
+ w9.setLeft(200);
+ w9.setBorder(new qx.renderer.border.BorderObject(2, "solid", "activeCaption"));
+ w9.setBackgroundColor("threedlightshadow");
+
+ d.add(w9);
+
+
+
+
+
+ var w10 = new qx.ui.basic.Atom("Super qooxdoo", "icon/48/apps/preferences-desktop-multimedia.png");
+
+ w10.setTop(520);
+ w10.setLeft(400);
+ w10.setBorder(new qx.renderer.border.BorderObject(2, "solid", new qx.renderer.color.ColorObject("activeCaption")));
+ w10.setBackgroundColor("threedlightshadow");
+
+ d.add(w10);
+
+
+
+
+
+
+ var w11 = new qx.ui.basic.Label("Hello World");
+
+ w11.setTop(600);
+ w11.setLeft(20);
+ w11.setBackgroundColor([232,102,255]);
+ w11.setColor(20,30,60);
+ w11.setBorder(1, "solid", "red");
+
+ d.add(w11);
+
+
+
+ var w12 = new qx.ui.basic.Label("Hello World");
+
+ w12.setTop(600);
+ w12.setLeft(120);
+ w12.setBackgroundColor([232,102,255]);
+ w12.setColor(20,30,60);
+ w12.setBorder([1, "solid", "red"]);
+
+ d.add(w12);
+
+
+
+ var w13 = new qx.ui.basic.Label("Hello World");
+
+ w13.setLocation(220, 600);
+ w13.setBackgroundColor([232,102,255]);
+ w13.setColor(20,30,60);
+ w13.setBorder([1, "solid", "activeCaption"]);
+
+ d.add(w13);
+
+
+
+
+ var myBoundedBorder1 = new qx.renderer.border.Border(1, "solid", [200,10,20]);
+
+
+ var w14 = new qx.ui.basic.Terminator;
+
+ w14.setWidth(100);
+ w14.setHeight(100);
+ w14.setLeft(600);
+ w14.setTop(100);
+ w14.setBorder(myBoundedBorder1);
+
+ d.add(w14);
+
+ // should not work with qx.renderer.border.Border - use qx.renderer.border.BorderObject instead
+ w14.addEventListener("click", function(e) {
+ myBoundedBorder1.setTopColor([100,200,200]);
+ myBoundedBorder1.setTopWidth(10);
+ });
+
+
+
+ var myBoundedBorder2 = new qx.renderer.border.BorderObject(1, "solid", [200,10,20]);
+
+
+ var w15 = new qx.ui.basic.Terminator;
+
+ w15.setWidth(100);
+ w15.setHeight(100);
+ w15.setLeft(600);
+ w15.setTop(210);
+ w15.setBorder(myBoundedBorder2);
+
+ d.add(w15);
+
+ w15.addEventListener("click", function(e) {
+ myBoundedBorder2.setTopColor([100,200,200]);
+ myBoundedBorder2.setTopWidth(10);
+ });
+
+
+
+
+ // Color Themes
+ qx.manager.object.ColorManager.getInstance().createThemeList(d, 350, 128);
+
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ColorTheme_2.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ColorTheme_2.html
new file mode 100644
index 0000000000..a76a8dc567
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ColorTheme_2.html
@@ -0,0 +1,77 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Color Theme Test</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+
+ // Create Default OS Color Table
+ var w;
+ var c=0;
+ for (var i in qx.renderer.color.Color.themedNames)
+ {
+ w = new qx.ui.basic.Label(i);
+
+ w.setWidth(120);
+ w.setTop(48+(c*18));
+ w.setLeft(20);
+ w.setPadding(1, 2);
+ w.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w.setStyleProperty("backgroundColor", i);
+
+ d.add(w);
+
+ c++;
+ };
+
+
+
+ // Create Default OS Color Table
+ var w;
+ var c=0;
+ for (var i in qx.renderer.color.Color.themedNames)
+ {
+ w = new qx.ui.basic.Label(i);
+
+ w.setWidth(120);
+ w.setTop(48+(c*18));
+ w.setLeft(150);
+ w.setPadding(1, 2);
+ w.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w.setBackgroundColor(new qx.renderer.color.ColorObject(i));
+
+ d.add(w);
+
+ c++;
+ };
+
+
+
+
+
+
+
+
+ // Color Themes
+ qx.manager.object.ColorManager.getInstance().createThemeList(d, 400, 128);
+ });
+ </script>
+
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ColorTheme_3.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ColorTheme_3.html
new file mode 100644
index 0000000000..5378f2f5f6
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ColorTheme_3.html
@@ -0,0 +1,176 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Color Theme Test for qx.renderer.border.BorderObject's</p>
+ <ul>
+ <li>First Col: qooxdoo solution for borders</li>
+ <li>Second Col: html solution without color value</li>
+ <li>Third Col: html solution with color value: white</li>
+ </ul>
+ <p>The default color Theme is: <em>OS Default</em></p>
+ </div>
+
+ <div style="position: absolute; left: 120px; top: 48px; width: 50px">
+ <div style="width:50px; height: 50px; margin-bottom: 10px; border: 2px outset">&#160;</div>
+ <div style="width:50px; height: 50px; margin-bottom: 10px; border: 2px inset">&#160;</div>
+ <div style="width:50px; height: 50px; margin-bottom: 10px; border: 2px ridge">&#160;</div>
+ <div style="width:50px; height: 50px; margin-bottom: 10px; border: 2px groove">&#160;</div>
+
+ <div style="width:50px; height: 50px; margin-bottom: 10px; border: 1px outset">&#160;</div>
+ <div style="width:50px; height: 50px; margin-bottom: 10px; border: 1px inset">&#160;</div>
+ </div>
+
+ <div style="position: absolute; left: 180px; top: 48px; width: 50px">
+ <div style="width:50px; height: 50px; margin-bottom: 10px; border: 2px outset white">&#160;</div>
+ <div style="width:50px; height: 50px; margin-bottom: 10px; border: 2px inset white">&#160;</div>
+ <div style="width:50px; height: 50px; margin-bottom: 10px; border: 2px ridge white">&#160;</div>
+ <div style="width:50px; height: 50px; margin-bottom: 10px; border: 2px groove white">&#160;</div>
+
+ <div style="width:50px; height: 50px; margin-bottom: 10px; border: 1px outset white">&#160;</div>
+ <div style="width:50px; height: 50px; margin-bottom: 10px; border: 1px inset white">&#160;</div>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+
+
+ var w1 = new qx.ui.basic.Terminator;
+ w1.setDimension(50, 50);
+ w1.setLocation(20, 48);
+ w1.setBorder(new qx.renderer.border.BorderObject(2, "outset"));
+ d.add(w1);
+
+ var w2 = new qx.ui.basic.Terminator;
+ w2.setDimension(50, 50);
+ w2.setLocation(20, 108);
+ w2.setBorder(new qx.renderer.border.BorderObject(2, "inset"));
+ d.add(w2);
+
+ var w3 = new qx.ui.basic.Terminator;
+ w3.setDimension(50, 50);
+ w3.setLocation(20, 168);
+ w3.setBorder(new qx.renderer.border.BorderObject(2, "ridge"));
+ d.add(w3);
+
+ var w4 = new qx.ui.basic.Terminator;
+ w4.setDimension(50, 50);
+ w4.setLocation(20, 228);
+ w4.setBorder(new qx.renderer.border.BorderObject(2, "groove"));
+ d.add(w4);
+
+ var w5 = new qx.ui.basic.Terminator;
+ w5.setDimension(50, 50);
+ w5.setLocation(20, 288);
+ w5.setBorder(new qx.renderer.border.BorderObject(1, "outset"));
+ d.add(w5);
+
+ var w6 = new qx.ui.basic.Terminator;
+ w6.setDimension(50, 50);
+ w6.setLocation(20, 348);
+ w6.setBorder(new qx.renderer.border.BorderObject(1, "inset"));
+ d.add(w6);
+
+
+
+ var border1 = new qx.renderer.border.BorderObject(2, "outset");
+ var border2 = new qx.renderer.border.BorderObject(1, "outset");
+
+ var w7 = new qx.ui.layout.CanvasLayout;
+ w7.setDimension(50, 50);
+ w7.setLocation(20, 408);
+ w7.setBorder(border1);
+ d.add(w7);
+
+ var w7c = new qx.ui.basic.Terminator;
+ w7c.setDimension("100%", "100%");
+ w7c.setBackgroundColor(new qx.renderer.color.Color("red"));
+ w7.add(w7c);
+
+
+
+ var w8 = new qx.ui.layout.CanvasLayout;
+ w8.setDimension(50, 50);
+ w8.setLocation(20, 468);
+ w8.setBorder(border2);
+ d.add(w8);
+
+ var w8c = new qx.ui.basic.Terminator;
+ w8c.setDimension("100%", "100%");
+ w8c.setBackgroundColor(new qx.renderer.color.Color("red"));
+ w8.add(w8c);
+
+
+
+
+ w7.addEventListener("click", function(e) {
+ this.setBorder(this.getBorder() == null ? border1 : this.getBorder() == border1 ? border2 : null)
+ });
+
+ w8.addEventListener("click", function(e) {
+ this.setBorder(this.getBorder() == null ? border1 : this.getBorder() == border1 ? border2 : null)
+ });
+
+
+
+
+
+
+ var w9 = new qx.ui.layout.CanvasLayout;
+
+ w9.setDimension(100, 100);
+ w9.setLocation(400, 400);
+ w9.setBorder(border1);
+ w9.setOverflow("scroll");
+
+ d.add(w9);
+
+ var w9c = new qx.ui.basic.Image("icon/32/actions/format-color.png");
+
+ w9c.setTop(150);
+ w9c.setLeft(300);
+
+ w9.add(w9c);
+
+
+
+ w9.addEventListener("click", function(e) {
+ this.setOverflow(this.getOverflow() == "scroll" ? "scrollX" : this.getOverflow() == "scrollX" ? "scrollY" : this.getOverflow() == "scrollY" ? "" : "scroll");
+ });
+
+
+
+ // Color Themes
+ qx.manager.object.ColorManager.getInstance().createThemeList(d, 400, 128);
+
+
+
+
+
+
+ /*
+ var c1 = new qx.renderer.color.Color("gray");
+ this.debug("RGB-Transform I: " + c1.getRed() + "," + c1.getGreen() + "," + c1.getBlue());
+
+ // This could not work with the default theme "OS Default", as this does not define any rgb colors
+ var c2 = new qx.renderer.color.ColorObject("threedface");
+ this.debug("RGB-Transform II: " + c2.getRed() + "," + c2.getGreen() + "," + c2.getBlue());
+ */
+ });
+ </script>
+
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ComboBox_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ComboBox_1.html
new file mode 100644
index 0000000000..7a2a2e65bd
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ComboBox_1.html
@@ -0,0 +1,102 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Testing qx.ui.form.ComboBox implementation.</p>
+ <p>Testing object creation (the list content will be filled then) on first open.</p>
+ </div>
+
+ <select style="position:absolute; left:300px; top:48px; width: 120px;">
+ <option>Item No 1</option>
+ <option>Item No 2</option>
+ <option>Item No 3</option>
+ <option>Item No 4</option>
+ <option>Item No 5</option>
+ <option>Item No 6</option>
+ <option>Item No 7</option>
+ <option>Item No 8</option>
+ <option>Item No 9</option>
+ <option disabled="true">Item No 10</option>
+ <option>Item No 11</option>
+ <option>Item No 12</option>
+ <option>Item No 13</option>
+ <option>Item No 14</option>
+ <option>Item No 15</option>
+ <option>Item No 16</option>
+ <option>Item No 17</option>
+ <option>Item No 18</option>
+ <option>Item No 19</option>
+ <option disabled="true">Item No 20</option>
+ <option>Item No 21</option>
+ <option>Item No 22</option>
+ <option>Item No 23</option>
+ <option>Item No 24</option>
+ <option>Item No 23</option>
+ <option>Item No 24</option>
+ <option>Item No 25</option>
+ <option>Item No 26</option>
+ <option>Item No 27</option>
+ <option>Item No 28</option>
+ <option>Item No 29</option>
+ <option disabled="true">Item No 30</option>
+ </select>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var c1 = new qx.ui.form.ComboBox;
+ c1.setLocation(20, 48);
+
+ c1.addEventListener("beforeInitialOpen", function(e)
+ {
+ var item;
+
+ for(var i=1; i<=30; i++)
+ {
+ item = new qx.ui.form.ListItem("Item No " + i);
+ !(i % 10) && (item.setEnabled(false));
+ c1.add(item);
+ };
+ });
+
+ // this does not work here (if there is no content)
+ c1.setSelected(c1.getList().getFirstChild());
+
+ c1.addEventListener("changeValue", function(e) {
+ this.debug("New value: " + e.getData());
+ });
+
+ c1.addEventListener("changeSelected", function(e) {
+ this.debug("New selected: " + e.getData());
+ });
+
+
+
+
+ var b1 = new qx.ui.form.CheckBox("Editable");
+
+ b1.set({ top: 50, left: 150 });
+
+ b1.addEventListener("changeChecked", function(e) {
+ c1.setEditable(e.getData());
+ });
+
+
+
+ d.add(c1, b1);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ComboBox_2.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ComboBox_2.html
new file mode 100644
index 0000000000..c5a22d7ac5
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ComboBox_2.html
@@ -0,0 +1,116 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Testing qx.ui.form.ComboBox implementation.</p>
+ <p>Testing object creation (the list content will be filled then) on first open.</p>
+ <p>Added Color Theme Buttons</p>
+ </div>
+
+ <select style="position:absolute; left:300px; top:48px; width: 120px;">
+ <option>Item No 1</option>
+ <option>Item No 2</option>
+ <option>Item No 3</option>
+ <option>Item No 4</option>
+ <option>Item No 5</option>
+ <option>Item No 6</option>
+ <option>Item No 7</option>
+ <option>Item No 8</option>
+ <option>Item No 9</option>
+ <option disabled="true">Item No 10</option>
+ <option>Item No 11</option>
+ <option>Item No 12</option>
+ <option>Item No 13</option>
+ <option>Item No 14</option>
+ <option>Item No 15</option>
+ <option>Item No 16</option>
+ <option>Item No 17</option>
+ <option>Item No 18</option>
+ <option>Item No 19</option>
+ <option disabled="true">Item No 20</option>
+ <option>Item No 21</option>
+ <option>Item No 22</option>
+ <option>Item No 23</option>
+ <option>Item No 24</option>
+ <option>Item No 23</option>
+ <option>Item No 24</option>
+ <option>Item No 25</option>
+ <option>Item No 26</option>
+ <option>Item No 27</option>
+ <option>Item No 28</option>
+ <option>Item No 29</option>
+ <option disabled="true">Item No 30</option>
+ </select>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var c1 = new qx.ui.form.ComboBox;
+ c1.setLocation(20, 48);
+
+ c1.addEventListener("beforeInitialOpen", function(e)
+ {
+ var item;
+
+ for(var i=1; i<=30; i++)
+ {
+ item = new qx.ui.form.ListItem("Item No " + i);
+ !(i % 10) && (item.setEnabled(false));
+ c1.add(item);
+ };
+ });
+
+ // this does not work here (if there is no content)
+ c1.setSelected(c1.getList().getFirstChild());
+
+ c1.addEventListener("changeValue", function(e) {
+ this.debug("New value: " + e.getData());
+ });
+
+ c1.addEventListener("changeSelected", function(e) {
+ this.debug("New selected: " + e.getData());
+ });
+
+
+
+
+ var b1 = new qx.ui.form.CheckBox("Editable");
+
+ b1.set({ top: 50, left: 150 });
+
+ b1.addEventListener("changeChecked", function(e) {
+ c1.setEditable(e.getData());
+ });
+
+
+
+ d.add(c1, b1);
+
+
+
+
+
+
+
+
+ // Color Themes
+ qx.manager.object.ColorManager.getInstance().createThemeList(d, 20, 248);
+
+
+
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ComboBox_3.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ComboBox_3.html
new file mode 100644
index 0000000000..8a8fbb0216
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ComboBox_3.html
@@ -0,0 +1,123 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Testing qx.ui.form.ComboBox implementation.</p>
+ <p>Testing object creation (the list content will be filled then) on first open.</p>
+ <p>Added Color Theme Buttons</p>
+ <p>Now with image inside the popup.</p>
+ </div>
+
+ <select style="position:absolute; left:300px; top:48px; width: 120px;">
+ <option>Item No 1</option>
+ <option>Item No 2</option>
+ <option>Item No 3</option>
+ <option>Item No 4</option>
+ <option>Item No 5</option>
+ <option>Item No 6</option>
+ <option>Item No 7</option>
+ <option>Item No 8</option>
+ <option>Item No 9</option>
+ <option disabled="true">Item No 10</option>
+ <option>Item No 11</option>
+ <option>Item No 12</option>
+ <option>Item No 13</option>
+ <option>Item No 14</option>
+ <option>Item No 15</option>
+ <option>Item No 16</option>
+ <option>Item No 17</option>
+ <option>Item No 18</option>
+ <option>Item No 19</option>
+ <option disabled="true">Item No 20</option>
+ <option>Item No 21</option>
+ <option>Item No 22</option>
+ <option>Item No 23</option>
+ <option>Item No 24</option>
+ <option>Item No 23</option>
+ <option>Item No 24</option>
+ <option>Item No 25</option>
+ <option>Item No 26</option>
+ <option>Item No 27</option>
+ <option>Item No 28</option>
+ <option>Item No 29</option>
+ <option disabled="true">Item No 30</option>
+ </select>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var c1 = new qx.ui.form.ComboBox;
+ c1.setLocation(20, 48);
+
+ // this example seems to be buggy with auto-height
+ // c1.getPopup().setHeight(150);
+
+ c1.addEventListener("beforeInitialOpen", function(e)
+ {
+ var item;
+ var list = [ "archive", "binary", "card", "document", "html", "image", "manual", "multimedia", "pdf" ];
+
+ for(var i=0; i<list.length; i++)
+ {
+ item = new qx.ui.form.ListItem(list[i], "icon/48/mime-" + list[i] + ".png");
+ item.setShow("icon");
+
+ c1.add(item);
+ };
+
+ c1.setSelected(c1.getList().getFirstChild());
+ });
+
+ // this does not work here (if there is no content)
+ c1.setSelected(c1.getList().getFirstChild());
+
+ c1.addEventListener("changeValue", function(e) {
+ this.debug("New value: " + e.getData());
+ });
+
+ c1.addEventListener("changeSelected", function(e) {
+ this.debug("New selected: " + e.getData());
+ });
+
+
+
+
+ var b1 = new qx.ui.form.CheckBox("Editable");
+
+ b1.set({ top: 50, left: 150 });
+
+ b1.addEventListener("changeChecked", function(e) {
+ c1.setEditable(e.getData());
+ });
+
+
+
+ d.add(c1, b1);
+
+
+
+
+
+
+
+ // Color Themes
+ qx.manager.object.ColorManager.getInstance().createThemeList(d, 20, 248);
+
+
+
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ComboBox_4.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ComboBox_4.html
new file mode 100644
index 0000000000..3cc11235aa
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ComboBox_4.html
@@ -0,0 +1,41 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Testing qx.ui.form.ComboBox behaviour when inside a container with scroll bars and the popup list goes off the screen.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function() {
+ var box = new qx.ui.layout.BoxLayout('vertical');
+ box.set({left: 5, right: 300, top: 30, bottom: 20, overflow: 'scroll', backgroundColor: '#FFE'});
+ for (var row = 0; row < 8; row++) {
+ var rowBox = new qx.ui.layout.BoxLayout;
+ rowBox.set({ marginBottom: 100, width: 'auto', height: 'auto' });
+ for (var col = 0; col < 8; col++) {
+ var cb = new qx.ui.form.ComboBox;
+ for (var i = 0; i < 15; i++) {
+ cb.add(new qx.ui.form.ListItem('Item '+i));
+ }
+ cb.setEditable(true);
+ cb.setValue('Row '+row+', col '+col);
+ cb.setMarginRight(100);
+ rowBox.add(cb);
+ }
+ box.add(rowBox);
+ }
+ box.addToDocument();
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/CookieStorage_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/CookieStorage_1.html
new file mode 100644
index 0000000000..e13ba10f7d
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/CookieStorage_1.html
@@ -0,0 +1,45 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Tests for qx.io.local.CookieApi.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var f1 = new qx.ui.form.TextField;
+ f1.setLocation(20, 48);
+ qx.ui.core.ClientDocument.getInstance().add(f1);
+
+ var b1 = new qx.ui.form.Button("Restore");
+ b1.setLocation(20, 80);
+ qx.ui.core.ClientDocument.getInstance().add(b1);
+
+ var b2 = new qx.ui.form.Button("Save");
+ b2.setLocation(80, 80);
+ qx.ui.core.ClientDocument.getInstance().add(b2);
+
+
+
+ b1.addEventListener("execute", function(e) {
+ f1.setValue(qx.io.local.CookieTransport.get("fieldContent"));
+ });
+
+ b2.addEventListener("execute", function(e) {
+ qx.io.local.CookieTransport.set("fieldContent", f1.getValue());
+ });
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/CookieStorage_2.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/CookieStorage_2.html
new file mode 100644
index 0000000000..d98b6ffb19
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/CookieStorage_2.html
@@ -0,0 +1,67 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Tests for qx.io.local.CookieTransport API.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var vAll = [];
+ var vNum = 20;
+
+ for (var i=0; i<vNum; i++)
+ {
+ var f1 = new qx.ui.form.TextField;
+ f1.setLocation(20, 48+(i*22));
+ qx.ui.core.ClientDocument.getInstance().add(f1);
+ vAll.push(f1);
+ };
+
+ var b1 = new qx.ui.form.Button("Restore");
+ b1.setLocation(220, 48);
+ qx.ui.core.ClientDocument.getInstance().add(b1);
+
+ var b2 = new qx.ui.form.Button("Save");
+ b2.setLocation(280, 48);
+ qx.ui.core.ClientDocument.getInstance().add(b2);
+
+ var b3 = new qx.ui.form.Button("Clear");
+ b3.setLocation(340, 48);
+ qx.ui.core.ClientDocument.getInstance().add(b3);
+
+
+
+ b1.addEventListener("execute", function(e)
+ {
+ for (var i=0; i<vAll.length; i++) {
+ var vIn = qx.io.local.CookieTransport.get("fieldContent" + i);
+ vAll[i].setValue(vIn);
+ };
+ });
+
+ b2.addEventListener("execute", function(e)
+ {
+ for (var i=0; i<vAll.length; i++) {
+ qx.io.local.CookieTransport.set("fieldContent" + i, vAll[i].getValue());
+ };
+ });
+
+ b3.addEventListener("execute", function(e) {
+ qx.io.local.CookieTransport.delAll();
+ });
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Cookie_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Cookie_1.html
new file mode 100644
index 0000000000..2f6214da09
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Cookie_1.html
@@ -0,0 +1,45 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Tests for qx.io.local.CookieApi.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var f1 = new qx.ui.form.TextField;
+ f1.setLocation(20, 48);
+ qx.ui.core.ClientDocument.getInstance().add(f1);
+
+ var b1 = new qx.ui.form.Button("Restore");
+ b1.setLocation(20, 80);
+ qx.ui.core.ClientDocument.getInstance().add(b1);
+
+ var b2 = new qx.ui.form.Button("Save");
+ b2.setLocation(80, 80);
+ qx.ui.core.ClientDocument.getInstance().add(b2);
+
+
+
+ b1.addEventListener("execute", function(e) {
+ f1.setValue(qx.io.local.CookieApi.get("fieldContent"));
+ });
+
+ b2.addEventListener("execute", function(e) {
+ qx.io.local.CookieApi.set("fieldContent", f1.getValue());
+ });
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/CrossBrowser_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/CrossBrowser_1.html
new file mode 100644
index 0000000000..1bfb3abd7b
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/CrossBrowser_1.html
@@ -0,0 +1,166 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <fieldset style="padding:3px; background-color:#fff; text-align:right"><legend style="color:red">Outer</legend>
+ <span style="color:blue; font-style:italic">Margin</span>
+ <fieldset style="margin:3px 10px; padding:3px 10px; background-color:#bbb"><legend style="color:red">Box</legend>
+ <span style="color:blue; font-style:italic">Inset (Border + Scrollbar)</span>
+ <fieldset style="margin:3px 10px; padding:3px 10px; background-color:#999"><legend style="color:red">Area</legend>
+ <span style="color:blue; font-style:italic">Padding</span>
+ <fieldset style="margin:3px 10px; padding:3px 10px; background-color:#666"><legend style="color:red">Inner</legend>
+ </fieldset>
+ </fieldset>
+ </fieldset>
+ </fieldset>
+ </div>
+
+ <div style="margin-left:200px;margin-right:400px; margin-top: 30px;">
+Mit seiner Aufnahme in die Elite war Knechts Leben auf eine andre Ebene verpflanzt, es war der erste und entscheidende Schritt in seiner Entwicklung geschehen. Es geht durchaus nicht allen Elitesch�lern so, da� die amtliche Aufnahme in die Elite mit dem innern Erlebnis der Berufung zusammenf�llt. Das ist Gnade, oder wenn man es banal ausdr�cken will: es ist ein Gl�cksfall. Wem er begegnet, dessen Leben hat ein Plus, so wie der ein Plus besitzt, dem ein Gl�cksfall besonders gl�ckliche Gaben an Leib und See le mitgegeben hat. Die meisten Elitesch�ler, ja beinahe alle, empfinden zwar ihre Wahl als ein gro�es Gl�ck, als eine Auszeichnung, auf die sie stolz sind, und sehr viele von ihnen haben sich auch diese Auszeichnung vorher gl�hend erw�nscht. Aber der �bergang von der gew�hnlichen heimatlichen Schule in die Schulen von Kastalien f�llt den meisten Auserw�hlten dann doch schwerer, als sie gedacht h�tten, und bringt manchen unerwartete Entt�uschungen. Vor allem ist der �bergang f�r alle jene Sch�ler, die in i hrem Elternhaus gl�cklich und geliebt waren, ein sehr schwerer Abschied und Verzicht, und so kommt denn auch, namentlich w�hrend der beiden ersten Elitejahre, eine nicht unbetr�chtliche Zahl von R�ckversetzungen vor, deren Grund nicht ein Mangel an Begabung und Flei�, sondern Unf�higkeit der Sch�ler ist, sich mit dem Internatsleben und vor allem mit dem Gedanken zu vers�hnen, k�nftig die Verbindung mit Familie und Heimat immer mehr zu l�sen und schlie�lich keine andre Zugeh�rigkeit mehr zu kennen und zu r espektieren als die zum Orden. Dann gibt es je und je auch Sch�ler, welchen umgekehrt gerade das Loskommen vom Vaterhaus und von einer ihnen entleideten Schule die Hauptsache bei ihrer Aufnahme in die Elite war; diese, etwa von einem strengen Vater oder einem ihnen unangenehmen Lehrer befreit, atmeten zwar eine Weile auf, hatten sich aber von dem Wechsel so gro�e und unm�gliche Ver�nderungen ihres ganzen Lebens versprochen, da� bald eine Entt�uschung kam. Auch die eigentlichen Streber und Mustersch�ler, d i! e Pedantischen, konnten sich in Kastalien nicht immer halten; nicht da� sie den Studien nicht w�ren gewachsen gewesen, aber es kam in der Elite eben nicht allein auf die Studien und Fachzeugnisse an, sondern es wurden auch erzieherische und musische Ziele angestrebt, vor welchen dieser und jener die Waffen streckte. Immerhin war in dem System der vier gro�en Eliteschulen mit ihren zahlreichen Unterabteilungen und Zweiganstalten Raum f�r vielerlei Begabungen, und ein strebsamer Mathematiker oder Philologe, wenn er wirklich das Zeug zu einem Gelehrten in sich hatte, brauchte etwa einen Mangel an musikalischer oder philosophischer Begabung nicht als Gefahr zu empfinden. Es gab zuzeiten sogar in Kastalien sehr starke Tendenzen zur Pflege der reinen, n�chternen Fachwissenschaften, und die Vork�mpfer dieser Tendenzen waren nicht nur gegen die �Phantasten�, das hei�t gegen die Musikalischen und Musischen, kritisch und spottlustig gestimmt, sondern haben zuzeiten innerhalb ihrer Kreise alles Musische, und namentl ich das Glasperlenspiel, geradezu abgeschworen und verp�nt.Da Knechts Leben, soweit es uns bekannt ist, sich ganz in Kastalien abspielte, in jenem stillsten und heitersten Bezirk unseres gebirgigen Landes, den man fr�her mit einem Ausdruck des Dichters Goethe oft auch �die p�dagogische Provinz� genannt hat, wollen wir in aller K�rze und auf die Gefahr hin, den Leser mit L�ngstgewu�tem zu langweilen, nochmals dies ber�hmte Kastalien.
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var w1 = new qx.ui.basic.Terminator;
+
+ with(w1)
+ {
+ setHeight(100);
+ setWidth(100);
+ setTop(48);
+ setLeft(20);
+ setBackgroundColor("orange");
+ setStyleProperty("padding", "5px");
+ setStyleProperty("margin", "10px");
+ setBorder(new qx.renderer.border.Border(2, "solid", "blue"));
+ setOverflow("scroll");
+ };
+
+ d.add(w1);
+
+ w1.addEventListener("initialShow", function(e)
+ {
+ QxDebug("Properties", "getComputedMarginLeft: " + w1.getComputedMarginLeft());
+ QxDebug("Properties", "getComputedMarginTop: " + w1.getComputedMarginTop());
+ QxDebug("Properties", "getComputedMarginRight: " + w1.getComputedMarginRight());
+ QxDebug("Properties", "getComputedMarginBottom: " + w1.getComputedMarginBottom());
+
+ QxDebug("Properties", "getComputedPaddingLeft: " + w1.getComputedPaddingLeft());
+ QxDebug("Properties", "getComputedPaddingTop: " + w1.getComputedPaddingTop());
+ QxDebug("Properties", "getComputedPaddingRight: " + w1.getComputedPaddingRight());
+ QxDebug("Properties", "getComputedPaddingBottom: " + w1.getComputedPaddingBottom());
+
+ QxDebug("Properties", "getComputedBorderLeft: " + w1.getComputedBorderLeft());
+ QxDebug("Properties", "getComputedBorderTop: " + w1.getComputedBorderTop());
+ QxDebug("Properties", "getComputedBorderRight: " + w1.getComputedBorderRight());
+ QxDebug("Properties", "getComputedBorderBottom: " + w1.getComputedBorderBottom());
+
+ QxDebug("Dimensions", "getComputedOuterWidth: " + w1.getComputedOuterWidth());
+ QxDebug("Dimensions", "getComputedOuterHeight: " + w1.getComputedOuterHeight());
+
+ QxDebug("Dimensions", "getComputedBoxWidth: " + w1.getComputedBoxWidth());
+ QxDebug("Dimensions", "getComputedBoxHeight: " + w1.getComputedBoxHeight());
+
+ QxDebug("Dimensions", "getComputedAreaWidth: " + w1.getComputedAreaWidth());
+ QxDebug("Dimensions", "getComputedAreaHeight: " + w1.getComputedAreaHeight());
+
+ QxDebug("Dimensions", "getComputedInnerWidth: " + w1.getComputedInnerWidth());
+ QxDebug("Dimensions", "getComputedInnerHeight: " + w1.getComputedInnerHeight());
+
+ QxDebug("Insets", "getComputedInsetLeft: " + w1.getComputedInsetLeft());
+ QxDebug("Insets", "getComputedInsetTop: " + w1.getComputedInsetTop());
+ QxDebug("Insets", "getComputedInsetRight: " + w1.getComputedInsetRight());
+ QxDebug("Insets", "getComputedInsetBottom: " + w1.getComputedInsetBottom());
+
+ QxDebug("Scroll", "getComputedScrollBarSizeLeft: " + w1.getComputedScrollBarSizeLeft());
+ QxDebug("Scroll", "getComputedScrollBarSizeTop: " + w1.getComputedScrollBarSizeTop());
+ QxDebug("Scroll", "getComputedScrollBarSizeRight: " + w1.getComputedScrollBarSizeRight());
+ QxDebug("Scroll", "getComputedScrollBarSizeBottom: " + w1.getComputedScrollBarSizeBottom());
+
+ QxDebug("Scroll", "getComputedScrollBarVisibleX: " + w1.getComputedScrollBarVisibleX());
+ QxDebug("Scroll", "getComputedScrollBarVisibleY: " + w1.getComputedScrollBarVisibleY());
+
+
+
+ QxDebug("Positions->Client", "getComputedClientOuterLeft: " + w1.getComputedClientOuterLeft());
+ QxDebug("Positions->Client", "getComputedClientOuterTop: " + w1.getComputedClientOuterTop());
+ QxDebug("Positions->Client", "getComputedClientOuterRight: " + w1.getComputedClientOuterRight());
+ QxDebug("Positions->Client", "getComputedClientOuterBottom: " + w1.getComputedClientOuterBottom());
+
+ QxDebug("Positions->Client", "getComputedClientBoxLeft: " + w1.getComputedClientBoxLeft());
+ QxDebug("Positions->Client", "getComputedClientBoxTop: " + w1.getComputedClientBoxTop());
+ QxDebug("Positions->Client", "getComputedClientBoxRight: " + w1.getComputedClientBoxRight());
+ QxDebug("Positions->Client", "getComputedClientBoxBottom: " + w1.getComputedClientBoxBottom());
+
+ QxDebug("Positions->Client", "getComputedClientAreaLeft: " + w1.getComputedClientAreaLeft());
+ QxDebug("Positions->Client", "getComputedClientAreaTop: " + w1.getComputedClientAreaTop());
+ QxDebug("Positions->Client", "getComputedClientAreaRight: " + w1.getComputedClientAreaRight());
+ QxDebug("Positions->Client", "getComputedClientAreaBottom: " + w1.getComputedClientAreaBottom());
+
+ QxDebug("Positions->Client", "getComputedClientInnerLeft: " + w1.getComputedClientInnerLeft());
+ QxDebug("Positions->Client", "getComputedClientInnerTop: " + w1.getComputedClientInnerTop());
+ QxDebug("Positions->Client", "getComputedClientInnerRight: " + w1.getComputedClientInnerRight());
+ QxDebug("Positions->Client", "getComputedClientInnerBottom: " + w1.getComputedClientInnerBottom());
+
+
+
+ QxDebug("Positions->Page", "getComputedPageOuterLeft: " + w1.getComputedPageOuterLeft());
+ QxDebug("Positions->Page", "getComputedPageOuterTop: " + w1.getComputedPageOuterTop());
+ QxDebug("Positions->Page", "getComputedPageOuterRight: " + w1.getComputedPageOuterRight());
+ QxDebug("Positions->Page", "getComputedPageOuterBottom: " + w1.getComputedPageOuterBottom());
+
+ QxDebug("Positions->Page", "getComputedPageBoxLeft: " + w1.getComputedPageBoxLeft());
+ QxDebug("Positions->Page", "getComputedPageBoxTop: " + w1.getComputedPageBoxTop());
+ QxDebug("Positions->Page", "getComputedPageBoxRight: " + w1.getComputedPageBoxRight());
+ QxDebug("Positions->Page", "getComputedPageBoxBottom: " + w1.getComputedPageBoxBottom());
+
+ QxDebug("Positions->Page", "getComputedPageAreaLeft: " + w1.getComputedPageAreaLeft());
+ QxDebug("Positions->Page", "getComputedPageAreaTop: " + w1.getComputedPageAreaTop());
+ QxDebug("Positions->Page", "getComputedPageAreaRight: " + w1.getComputedPageAreaRight());
+ QxDebug("Positions->Page", "getComputedPageAreaBottom: " + w1.getComputedPageAreaBottom());
+
+ QxDebug("Positions->Page", "getComputedPageInnerLeft: " + w1.getComputedPageInnerLeft());
+ QxDebug("Positions->Page", "getComputedPageInnerTop: " + w1.getComputedPageInnerTop());
+ QxDebug("Positions->Page", "getComputedPageInnerRight: " + w1.getComputedPageInnerRight());
+ QxDebug("Positions->Page", "getComputedPageInnerBottom: " + w1.getComputedPageInnerBottom());
+
+
+
+
+ QxDebug("Screen", "getComputedScreenOuterLeft: " + w1.getComputedScreenOuterLeft());
+ QxDebug("Screen", "getComputedScreenOuterTop: " + w1.getComputedScreenOuterTop());
+ QxDebug("Screen", "getComputedScreenOuterRight: " + w1.getComputedScreenOuterRight());
+ QxDebug("Screen", "getComputedScreenOuterBottom: " + w1.getComputedScreenOuterBottom());
+
+ QxDebug("Screen", "getComputedScreenBoxLeft: " + w1.getComputedScreenBoxLeft());
+ QxDebug("Screen", "getComputedScreenBoxTop: " + w1.getComputedScreenBoxTop());
+ QxDebug("Screen", "getComputedScreenBoxRight: " + w1.getComputedScreenBoxRight());
+ QxDebug("Screen", "getComputedScreenBoxBottom: " + w1.getComputedScreenBoxBottom());
+
+ QxDebug("Screen", "getComputedScreenAreaLeft: " + w1.getComputedScreenAreaLeft());
+ QxDebug("Screen", "getComputedScreenAreaTop: " + w1.getComputedScreenAreaTop());
+ QxDebug("Screen", "getComputedScreenAreaRight: " + w1.getComputedScreenAreaRight());
+ QxDebug("Screen", "getComputedScreenAreaBottom: " + w1.getComputedScreenAreaBottom());
+
+ QxDebug("Screen", "getComputedScreenInnerLeft: " + w1.getComputedScreenInnerLeft());
+ QxDebug("Screen", "getComputedScreenInnerTop: " + w1.getComputedScreenInnerTop());
+ QxDebug("Screen", "getComputedScreenInnerRight: " + w1.getComputedScreenInnerRight());
+ QxDebug("Screen", "getComputedScreenInnerBottom: " + w1.getComputedScreenInnerBottom());
+ });
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/CrossBrowser_2.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/CrossBrowser_2.html
new file mode 100644
index 0000000000..700c80a03b
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/CrossBrowser_2.html
@@ -0,0 +1,128 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Tests for crossbrowser offsetTop and offsetLeft properties provided by qx.dom</p>
+ </div>
+
+ <style type="text/css">
+
+#i{
+ border: 1px solid red;
+}
+
+#l{
+ position: absolute;
+
+ top: 100px;
+ left: 100px;
+
+ width: 300px;
+ height: 300px;
+
+ overflow: auto;
+ border: 6px solid red;
+ padding: 10px;
+}
+
+#p1{
+ position: static;
+
+ width: 100px;
+ height: 100px;
+
+ overflow: auto;
+
+ border: 5px solid orange;
+ padding: 5px;
+}
+
+#p2{
+ position: absolute;
+
+ top: 150px;
+ left: 150px;
+
+ width: 100px;
+ height: 100px;
+
+ overflow: auto;
+
+ border: 5px solid orange;
+ padding: 3px;
+}
+
+#p1 div,
+#p2 div{
+ border: 2px solid blue;
+ padding: 4px;
+}
+ </style>
+
+ <br/><br/><br/><br/><br/>
+ <p id="i">Inline</p>
+
+ <div id="l">
+ <div id="p1">
+ <div id="p1a">P1-A</div>
+ <div id="p1b">P1-B</div>
+ <div id="p1c">P1-C</div>
+ <div id="p1d">P1-D</div>
+ <div id="p1e">P1-E</div>
+ <div id="p1f">P1-F</div>
+ <div id="p1g">P1-G</div>
+ <div id="p1h">P1-H</div>
+ <div id="p1j">P1-I</div>
+ </div>
+ <div id="p2">
+ <div id="p2a">P2-A</div>
+ <div id="p2b">P2-B</div>
+ <div id="p2c">P2-C</div>
+ <div id="p2d">P2-D</div>
+ <div id="p2e">P2-E</div>
+ <div id="p2f">P2-F</div>
+ <div id="p2g">P2-G</div>
+ <div id="p2h">P2-H</div>
+ <div id="p2j">P2-I</div>
+ </div>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var i = document.getElementById("i");
+ var l = document.getElementById("l");
+ var p1 = document.getElementById("p1");
+ var p2 = document.getElementById("p2");
+ var p1a = document.getElementById("p1a");
+ var p2a = document.getElementById("p2a");
+
+ qx.core.Init.getInstance().debug("Browser-Impl", "I: " + i.offsetLeft + "x" + i.offsetTop);
+ qx.core.Init.getInstance().debug("Browser-Impl", "L: " + l.offsetLeft + "x" + l.offsetTop);
+ qx.core.Init.getInstance().debug("Browser-Impl", "P1: " + p1.offsetLeft + "x" + p1.offsetTop);
+ qx.core.Init.getInstance().debug("Browser-Impl", "P2: " + p2.offsetLeft + "x" + p2.offsetTop);
+ qx.core.Init.getInstance().debug("Browser-Impl", "P1A: " + p1a.offsetLeft + "x" + p1a.offsetTop);
+ qx.core.Init.getInstance().debug("Browser-Impl", "P2A: " + p2a.offsetLeft + "x" + p2a.offsetTop);
+
+ qx.core.Init.getInstance().debug("QxDom-Impl", "I: " + qx.html.Offset.getLeft(i) + "x" + qx.html.Offset.getTop(i));
+ qx.core.Init.getInstance().debug("QxDom-Impl", "L: " + qx.html.Offset.getLeft(l) + "x" + qx.html.Offset.getTop(l));
+ qx.core.Init.getInstance().debug("QxDom-Impl", "P1: " + qx.html.Offset.getLeft(p1) + "x" + qx.html.Offset.getTop(p1));
+ qx.core.Init.getInstance().debug("QxDom-Impl", "P2: " + qx.html.Offset.getLeft(p2) + "x" + qx.html.Offset.getTop(p2));
+ qx.core.Init.getInstance().debug("QxDom-Impl", "P1A: " + qx.html.Offset.getLeft(p1a) + "x" + qx.html.Offset.getTop(p1a));
+ qx.core.Init.getInstance().debug("QxDom-Impl", "P2A: " + qx.html.Offset.getLeft(p2a) + "x" + qx.html.Offset.getTop(p2a));
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/DateChooserButton_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/DateChooserButton_1.html
new file mode 100644
index 0000000000..a9e17cf589
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/DateChooserButton_1.html
@@ -0,0 +1,64 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Test the date chooser button component.</p>
+ <p>This widget can be associated to another widget (in this case a textfield) which then
+ is synchronized with the selected date from the date chooser</p>
+ </div>
+
+ <script type="text/javascript">
+
+ qx.locale.Manager.getInstance().setLocale("C");
+
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ function changeValue(e) {
+ this.debug("Text changed: " + e.getData());
+ }
+
+ var l1 = new qx.ui.basic.Label("A date field: "); l1.set({top:51, left:20});
+ d.add(l1);
+
+ var tf1 = new qx.ui.form.TextField; tf1.set({top:48,left:80,width:70});
+ tf1.addEventListener("changeValue", changeValue);
+ d.add(tf1);
+
+
+ var dcb1 = new qx.ui.component.DateChooserButton();
+ dcb1.set({top:47,left:152});
+ // associate the date chooser button to the textfield tf1:
+ dcb1.setTargetWidget(tf1);
+ // change the button text
+ dcb1.setLabel("Please choose a date");
+ // change the chooser window title
+ dcb1.setChooserTitle("Date choosing made simple");
+
+ d.add(dcb1);
+
+ var l2 = new qx.ui.basic.Label("Date field 2: "); l2.set({top:91, left:20});
+ d.add(l2);
+
+ var tf2 = new qx.ui.form.TextField; tf2.set({top:88,left:80,width:70});
+ tf2.addEventListener("changeValue", changeValue);
+ d.add(tf2);
+
+ var dcb2 = new qx.ui.component.DateChooserButton(tf2);
+ dcb2.set({top:87,left:152});
+ d.add(dcb2);
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/DateChooserButton_2.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/DateChooserButton_2.html
new file mode 100644
index 0000000000..024c955f5b
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/DateChooserButton_2.html
@@ -0,0 +1,65 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Test the date chooser button component.</p>
+ <p>This widget can be associated to another widget (in this case a textfield) which then
+ is synchronized with the selected date from the date chooser</p>
+ <p>The second demo is localized for german dates</p>
+ </div>
+
+ <script type="text/javascript">
+
+ qx.locale.Manager.getInstance().setLocale("de_DE");
+
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ function changeValue(e) {
+ this.debug("Text changed: " + e.getData());
+ }
+
+ var l1 = new qx.ui.basic.Label("Ein Datum: "); l1.set({top:51, left:20});
+ d.add(l1);
+
+ var tf1 = new qx.ui.form.TextField; tf1.set({top:48,left:80,width:70});
+ tf1.addEventListener("changeValue", changeValue);
+ d.add(tf1);
+
+
+ var dcb1 = new qx.ui.component.DateChooserButton();
+ dcb1.set({top:47,left:152});
+ // associate the date chooser button to the textfield tf1:
+ dcb1.setTargetWidget(tf1);
+ // change the button text
+ dcb1.setLabel("Bitte ein Datum auswählen");
+ // change the chooser window title
+ dcb1.setChooserTitle("Einfache Datumsauswahl");
+
+ d.add(dcb1);
+
+ var l2 = new qx.ui.basic.Label("Datum 2: "); l2.set({top:91, left:20});
+ d.add(l2);
+
+ var tf2 = new qx.ui.form.TextField; tf2.set({top:88,left:80,width:70});
+ tf2.addEventListener("changeValue", changeValue);
+ d.add(tf2);
+
+ var dcb2 = new qx.ui.component.DateChooserButton(tf2);
+ dcb2.set({top:87,left:152,chooserTitle:"Bitte ein Datum wählen"});
+ d.add(dcb2);
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/DockLayout_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/DockLayout_1.html
new file mode 100644
index 0000000000..ff1ed23cd7
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/DockLayout_1.html
@@ -0,0 +1,53 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ Simple Test for qx.ui.layout.DockLayout.
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var dl1 = new qx.ui.layout.DockLayout;
+
+ dl1.setTop(48);
+ dl1.setLeft(20);
+ dl1.setRight(335);
+ dl1.setBottom(48);
+
+ dl1.setBorder(2, "outset");
+ dl1.setBackgroundColor("white");
+
+ d.add(dl1);
+
+
+
+ var t1 = new qx.ui.basic.Terminator;
+ t1.setHeight(50);
+ t1.setBackgroundColor("red");
+ dl1.addTop(t1);
+
+ var t2 = new qx.ui.basic.Terminator;
+ t2.setWidth(150);
+ t2.setBackgroundColor("yellow");
+ dl1.addLeft(t2);
+
+ var t3 = new qx.ui.basic.Terminator;
+ t3.setBackgroundColor("blue");
+ dl1.add(t3);
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/DockLayout_2.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/DockLayout_2.html
new file mode 100644
index 0000000000..d25bcf7ebb
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/DockLayout_2.html
@@ -0,0 +1,224 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ The next generation of table-less layouts ;)
+ </div>
+
+ <script type="text/javascript">
+ function selfRemove() {
+ this.getParent().remove(this);
+ };
+
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var dl1 = new qx.ui.layout.DockLayout;
+
+ dl1.setTop(48);
+ dl1.setLeft(20);
+ dl1.setRight(335);
+ dl1.setBottom(120);
+ dl1.setMinWidth(400);
+ dl1.setMinHeight(300);
+
+ dl1.setBorder(2, "outset");
+ dl1.setBackgroundColor("white");
+
+ d.add(dl1);
+
+
+
+ var t1 = new qx.ui.basic.Terminator;
+ t1.setHeight(50);
+ t1.setBackgroundColor("red");
+ t1.setVerticalAlign("top");
+ t1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t1.addEventListener("click", selfRemove);
+
+ var t2 = new qx.ui.basic.Terminator;
+ // t2.setWidth(150);
+ t2.setWidth("20%");
+ t2.setBackgroundColor("gray");
+ t2.setHorizontalAlign("left");
+ t2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t2.addEventListener("click", selfRemove);
+
+ var t3 = new qx.ui.basic.Terminator;
+ t3.setHeight(100);
+ t3.setBackgroundColor("yellow");
+ t3.setVerticalAlign("top");
+ t3.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t3.addEventListener("click", selfRemove);
+
+ var t4 = new qx.ui.basic.Terminator;
+ t4.setWidth(40);
+ t4.setBackgroundColor("orange");
+ t4.setHorizontalAlign("right");
+ t4.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t4.addEventListener("click", selfRemove);
+
+ var t5 = new qx.ui.basic.Terminator;
+ t5.setHeight(80);
+ t5.setBackgroundColor("blue");
+ t5.setVerticalAlign("bottom");
+ t5.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t5.addEventListener("click", selfRemove);
+
+ var t6 = new qx.ui.basic.Terminator;
+ t6.setBackgroundColor("green");
+ t6.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t6.addEventListener("click", selfRemove);
+
+ dl1.add(t1, t2, t3, t4, t5, t6);
+
+
+
+
+
+
+
+
+
+ var l1 = new qx.ui.basic.Label("Mode:");
+ l1.setWidth(50);
+
+ var btn1_1 = new qx.ui.form.Button("Vertical", "icon/16/actions/dialog-ok.png");
+ var btn1_2 = new qx.ui.form.Button("Horizontal", "icon/16/actions/dialog-ok.png");
+ var btn1_3 = new qx.ui.form.Button("Ordered", "icon/16/actions/dialog-ok.png");
+
+ btn1_1.addEventListener("click", function(e) {
+ dl1.setMode("vertical");
+ });
+
+ btn1_2.addEventListener("click", function(e) {
+ dl1.setMode("horizontal");
+ });
+
+ btn1_3.addEventListener("click", function(e) {
+ dl1.setMode("ordered");
+ });
+
+ var h1 = new qx.ui.layout.HorizontalBoxLayout;
+ h1.setVerticalChildrenAlign("middle");
+ h1.add(l1, btn1_1, btn1_2, btn1_3);
+ h1.setBottom(78);
+ h1.setLeft(20);
+ d.add(h1);
+
+
+
+
+
+
+
+
+
+ var l2 = new qx.ui.basic.Label("Children:");
+ l2.setWidth(50);
+
+ var btn2_1 = new qx.ui.form.Button("Remove First", "icon/16/actions/dialog-ok.png");
+ var btn2_2 = new qx.ui.form.Button("Remove Last", "icon/16/actions/dialog-ok.png");
+ var btn2_3 = new qx.ui.form.Button("Add Top", "icon/16/actions/dialog-ok.png");
+ var btn2_4 = new qx.ui.form.Button("Add Right", "icon/16/actions/dialog-ok.png");
+ var btn2_5 = new qx.ui.form.Button("Add Bottom", "icon/16/actions/dialog-ok.png");
+ var btn2_6 = new qx.ui.form.Button("Add Left", "icon/16/actions/dialog-ok.png");
+ var btn2_7 = new qx.ui.form.Button("Add Auto", "icon/16/actions/dialog-ok.png");
+
+ btn2_1.addEventListener("execute", function(e)
+ {
+ var c = dl1.getFirstChild();
+ if (c) {
+ dl1.remove(c);
+ };
+ });
+
+ btn2_2.addEventListener("execute", function(e)
+ {
+ var c = dl1.getLastChild();
+ if (c) {
+ dl1.remove(c);
+ };
+ });
+
+ btn2_3.addEventListener("execute", function(e)
+ {
+ var t = new qx.ui.basic.Terminator();
+
+ t.setBackgroundColor(qx.renderer.color.Color.fromRandom());
+ t.setHeight(2+Math.round(Math.random()*50));
+ t.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t.addEventListener("click", selfRemove);
+
+ dl1.addTop(t);
+ });
+
+ btn2_4.addEventListener("execute", function(e)
+ {
+ var t = new qx.ui.basic.Terminator();
+
+ t.setBackgroundColor(qx.renderer.color.Color.fromRandom());
+ t.setWidth(2+Math.round(Math.random()*50));
+ t.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t.addEventListener("click", selfRemove);
+
+ dl1.addRight(t);
+ });
+
+ btn2_5.addEventListener("execute", function(e)
+ {
+ var t = new qx.ui.basic.Terminator();
+
+ t.setBackgroundColor(qx.renderer.color.Color.fromRandom());
+ t.setHeight(2+Math.round(Math.random()*50));
+ t.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t.addEventListener("click", selfRemove);
+
+ dl1.addBottom(t);
+ });
+
+ btn2_6.addEventListener("execute", function(e)
+ {
+ var t = new qx.ui.basic.Terminator();
+
+ t.setBackgroundColor(qx.renderer.color.Color.fromRandom());
+ t.setWidth(2+Math.round(Math.random()*50));
+ t.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t.addEventListener("click", selfRemove);
+
+ dl1.addLeft(t);
+ });
+
+ btn2_7.addEventListener("execute", function(e)
+ {
+ var t = new qx.ui.basic.Terminator();
+
+ t.setBackgroundColor(qx.renderer.color.Color.fromRandom());
+ t.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t.addEventListener("click", selfRemove);
+
+ dl1.add(t);
+ });
+
+
+ var h2 = new qx.ui.layout.HorizontalBoxLayout;
+ h2.setVerticalChildrenAlign("middle");
+ h2.add(l2, btn2_1, btn2_2, btn2_3, btn2_4, btn2_5, btn2_6, btn2_7);
+ h2.setBottom(48);
+ h2.setLeft(20);
+ d.add(h2);
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/DockLayout_3.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/DockLayout_3.html
new file mode 100644
index 0000000000..c0e5dd5e99
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/DockLayout_3.html
@@ -0,0 +1,140 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ Testing Layouts inside the qx.ui.layout.DockLayout. In this example centering through qx.ui.layout.HorizontalBoxLayout.
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var dl1 = new qx.ui.layout.DockLayout;
+
+ dl1.setTop(48);
+ dl1.setLeft(20);
+ dl1.setRight(335);
+ dl1.setBottom(48);
+
+ dl1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ dl1.setBackgroundColor("white");
+
+ d.add(dl1);
+
+
+
+ var t1 = new qx.ui.layout.HorizontalBoxLayout;
+ t1.setHeight(50);
+ t1.setBackgroundColor("red");
+ t1.setWidth(null);
+ t1.setVerticalChildrenAlign("middle");
+ t1.setHorizontalChildrenAlign("center");
+ t1.add(new qx.ui.basic.Image("icon/16/apps/accessories-clock.png"));
+ dl1.addTop(t1);
+
+ var t2 = new qx.ui.layout.HorizontalBoxLayout;
+ t2.setWidth(150);
+ t2.setBackgroundColor("yellow");
+ t2.setHeight(null);
+ t2.setVerticalChildrenAlign("middle");
+ t2.setHorizontalChildrenAlign("center");
+ t2.add(new qx.ui.basic.Image("icon/16/apps/accessories-clock.png"));
+ dl1.addLeft(t2);
+
+ var t3 = new qx.ui.layout.HorizontalBoxLayout;
+ t3.setHeight(50);
+ t3.setBackgroundColor("blue");
+ t3.setWidth(null);
+ t3.setVerticalChildrenAlign("middle");
+ t3.setHorizontalChildrenAlign("center");
+ t3.add(new qx.ui.basic.Image("icon/16/apps/accessories-clock.png"));
+ dl1.addBottom(t3);
+
+ var t4 = new qx.ui.layout.HorizontalBoxLayout;
+ t4.setWidth(150);
+ t4.setBackgroundColor("green");
+ t4.setHeight(null);
+ t4.setVerticalChildrenAlign("middle");
+ t4.setHorizontalChildrenAlign("center");
+ t4.add(new qx.ui.basic.Image("icon/16/apps/accessories-clock.png"));
+ dl1.addRight(t4);
+
+
+
+
+ var dl2 = new qx.ui.layout.DockLayout;
+ dl2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ dl1.add(dl2);
+
+
+
+
+
+
+
+ var t5 = new qx.ui.layout.HorizontalBoxLayout;
+ t5.setHeight(50);
+ t5.setBackgroundColor("fuchsia");
+ t5.setWidth(null);
+ t5.setVerticalChildrenAlign("middle");
+ t5.setHorizontalChildrenAlign("center");
+ t5.add(new qx.ui.basic.Image("icon/32/apps/accessories-clock.png"));
+ dl2.addTop(t5);
+
+ var t6 = new qx.ui.layout.HorizontalBoxLayout;
+ t6.setWidth(150);
+ t6.setBackgroundColor("orange");
+ t6.setHeight(null);
+ t6.setVerticalChildrenAlign("middle");
+ t6.setHorizontalChildrenAlign("center");
+ t6.add(new qx.ui.basic.Image("icon/32/apps/accessories-clock.png"));
+ dl2.addLeft(t6);
+
+ var t7 = new qx.ui.layout.HorizontalBoxLayout;
+ t7.setHeight(50);
+ t7.setBackgroundColor("aqua");
+ t7.setWidth(null);
+ t7.setVerticalChildrenAlign("middle");
+ t7.setHorizontalChildrenAlign("center");
+ t7.add(new qx.ui.basic.Image("icon/32/apps/accessories-clock.png"));
+ dl2.addBottom(t7);
+
+ var t8 = new qx.ui.layout.HorizontalBoxLayout;
+ t8.setWidth(150);
+ t8.setBackgroundColor("lime");
+ t8.setHeight(null);
+ t8.setVerticalChildrenAlign("middle");
+ t8.setHorizontalChildrenAlign("center");
+ t8.add(new qx.ui.basic.Image("icon/32/apps/accessories-clock.png"));
+ dl2.addRight(t8);
+
+
+
+
+
+ var hb1 = new qx.ui.layout.HorizontalBoxLayout;
+
+ hb1.setBackgroundColor("silver");
+ hb1.setVerticalChildrenAlign("middle");
+ hb1.setHorizontalChildrenAlign("center");
+ hb1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ hb1.setWidth(null);
+ hb1.setHeight(null);
+ hb1.add(new qx.ui.basic.Image("icon/64/apps/accessories-clock.png"));
+
+ dl2.add(hb1);
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/DockLayout_4.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/DockLayout_4.html
new file mode 100644
index 0000000000..62bc46c3ae
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/DockLayout_4.html
@@ -0,0 +1,140 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ Same as the previous one, but additional the dimensions of the qx.ui.layout.DockLayout are defined as percents here.
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var dl1 = new qx.ui.layout.DockLayout;
+
+ dl1.setTop(48);
+ dl1.setLeft(20);
+ dl1.setRight(335);
+ dl1.setBottom(48);
+
+ dl1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ dl1.setBackgroundColor("white");
+
+ d.add(dl1);
+
+
+
+ var t1 = new qx.ui.layout.HorizontalBoxLayout;
+ t1.setHeight("20%");
+ t1.setBackgroundColor("red");
+ t1.setWidth(null);
+ t1.setVerticalChildrenAlign("middle");
+ t1.setHorizontalChildrenAlign("center");
+ t1.add(new qx.ui.basic.Image("icon/16/apps/accessories-clock.png"));
+ dl1.addTop(t1);
+
+ var t2 = new qx.ui.layout.HorizontalBoxLayout;
+ t2.setWidth("20%");
+ t2.setBackgroundColor("yellow");
+ t2.setHeight(null);
+ t2.setVerticalChildrenAlign("middle");
+ t2.setHorizontalChildrenAlign("center");
+ t2.add(new qx.ui.basic.Image("icon/16/apps/accessories-clock.png"));
+ dl1.addLeft(t2);
+
+ var t3 = new qx.ui.layout.HorizontalBoxLayout;
+ t3.setHeight("20%");
+ t3.setBackgroundColor("blue");
+ t3.setWidth(null);
+ t3.setVerticalChildrenAlign("middle");
+ t3.setHorizontalChildrenAlign("center");
+ t3.add(new qx.ui.basic.Image("icon/16/apps/accessories-clock.png"));
+ dl1.addBottom(t3);
+
+ var t4 = new qx.ui.layout.HorizontalBoxLayout;
+ t4.setWidth("20%");
+ t4.setBackgroundColor("green");
+ t4.setHeight(null);
+ t4.setVerticalChildrenAlign("middle");
+ t4.setHorizontalChildrenAlign("center");
+ t4.add(new qx.ui.basic.Image("icon/16/apps/accessories-clock.png"));
+ dl1.addRight(t4);
+
+
+
+
+ var dl2 = new qx.ui.layout.DockLayout;
+ dl2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ dl1.add(dl2);
+
+
+
+
+
+
+
+ var t5 = new qx.ui.layout.HorizontalBoxLayout;
+ t5.setHeight("20%");
+ t5.setBackgroundColor("fuchsia");
+ t5.setWidth(null);
+ t5.setVerticalChildrenAlign("middle");
+ t5.setHorizontalChildrenAlign("center");
+ t5.add(new qx.ui.basic.Image("icon/32/apps/accessories-clock.png"));
+ dl2.addTop(t5);
+
+ var t6 = new qx.ui.layout.HorizontalBoxLayout;
+ t6.setWidth("20%");
+ t6.setBackgroundColor("orange");
+ t6.setHeight(null);
+ t6.setVerticalChildrenAlign("middle");
+ t6.setHorizontalChildrenAlign("center");
+ t6.add(new qx.ui.basic.Image("icon/32/apps/accessories-clock.png"));
+ dl2.addLeft(t6);
+
+ var t7 = new qx.ui.layout.HorizontalBoxLayout;
+ t7.setHeight("20%");
+ t7.setBackgroundColor("aqua");
+ t7.setWidth(null);
+ t7.setVerticalChildrenAlign("middle");
+ t7.setHorizontalChildrenAlign("center");
+ t7.add(new qx.ui.basic.Image("icon/32/apps/accessories-clock.png"));
+ dl2.addBottom(t7);
+
+ var t8 = new qx.ui.layout.HorizontalBoxLayout;
+ t8.setWidth("20%");
+ t8.setBackgroundColor("lime");
+ t8.setHeight(null);
+ t8.setVerticalChildrenAlign("middle");
+ t8.setHorizontalChildrenAlign("center");
+ t8.add(new qx.ui.basic.Image("icon/32/apps/accessories-clock.png"));
+ dl2.addRight(t8);
+
+
+
+
+
+ var hb1 = new qx.ui.layout.HorizontalBoxLayout;
+
+ hb1.setBackgroundColor("silver");
+ hb1.setVerticalChildrenAlign("middle");
+ hb1.setHorizontalChildrenAlign("center");
+ hb1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ hb1.setWidth(null);
+ hb1.setHeight(null);
+ hb1.add(new qx.ui.basic.Image("icon/64/apps/accessories-clock.png"));
+
+ dl2.add(hb1);
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/DockLayout_5.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/DockLayout_5.html
new file mode 100644
index 0000000000..5375babd02
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/DockLayout_5.html
@@ -0,0 +1,164 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ Same as the previous one, but additional added multiple children to the box layout.
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var dl1 = new qx.ui.layout.DockLayout;
+
+ dl1.setTop(48);
+ dl1.setLeft(20);
+ dl1.setRight(335);
+ dl1.setBottom(48);
+
+ dl1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ dl1.setBackgroundColor("white");
+
+ d.add(dl1);
+
+
+
+ var t1 = new qx.ui.layout.HorizontalBoxLayout;
+ t1.setHeight("20%");
+ t1.setBackgroundColor("red");
+ t1.setWidth(null);
+ t1.setVerticalChildrenAlign("middle");
+ t1.setHorizontalChildrenAlign("center");
+ t1.setSpacing(4);
+ t1.add(new qx.ui.basic.Image("icon/16/apps/accessories-clock.png"));
+ t1.add(new qx.ui.basic.Label("Hello World"));
+ t1.add(new qx.ui.basic.Image("icon/48/categories/applications-graphics.png"));
+ dl1.addTop(t1);
+
+ var t2 = new qx.ui.layout.HorizontalBoxLayout;
+ t2.setWidth("20%");
+ t2.setBackgroundColor("yellow");
+ t2.setHeight(null);
+ t2.setVerticalChildrenAlign("middle");
+ t2.setHorizontalChildrenAlign("center");
+ t2.setSpacing(4);
+ t2.add(new qx.ui.basic.Image("icon/16/apps/accessories-clock.png"));
+ t2.add(new qx.ui.basic.Label("Hello World"));
+ t2.add(new qx.ui.basic.Image("icon/48/categories/applications-graphics.png"));
+ dl1.addLeft(t2);
+
+ var t3 = new qx.ui.layout.HorizontalBoxLayout;
+ t3.setHeight("20%");
+ t3.setBackgroundColor("blue");
+ t3.setWidth(null);
+ t3.setVerticalChildrenAlign("middle");
+ t3.setHorizontalChildrenAlign("center");
+ t3.setSpacing(4);
+ t3.add(new qx.ui.basic.Image("icon/16/apps/accessories-clock.png"));
+ t3.add(new qx.ui.basic.Label("Hello World"));
+ t3.add(new qx.ui.basic.Image("icon/48/categories/applications-graphics.png"));
+ dl1.addBottom(t3);
+
+ var t4 = new qx.ui.layout.HorizontalBoxLayout;
+ t4.setWidth("20%");
+ t4.setBackgroundColor("green");
+ t4.setHeight(null);
+ t4.setVerticalChildrenAlign("middle");
+ t4.setHorizontalChildrenAlign("center");
+ t4.setSpacing(4);
+ t4.add(new qx.ui.basic.Image("icon/16/apps/accessories-clock.png"));
+ t4.add(new qx.ui.basic.Label("Hello World"));
+ t4.add(new qx.ui.basic.Image("icon/48/categories/applications-graphics.png"));
+ dl1.addRight(t4);
+
+
+
+
+ var dl2 = new qx.ui.layout.DockLayout;
+ dl2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ dl1.add(dl2);
+
+
+
+
+
+
+
+ var t5 = new qx.ui.layout.HorizontalBoxLayout;
+ t5.setHeight("20%");
+ t5.setBackgroundColor("fuchsia");
+ t5.setWidth(null);
+ t5.setVerticalChildrenAlign("middle");
+ t5.setHorizontalChildrenAlign("center");
+ t5.setSpacing(4);
+ t5.add(new qx.ui.basic.Image("icon/16/apps/accessories-clock.png"));
+ t5.add(new qx.ui.basic.Label("Hello World"));
+ t5.add(new qx.ui.basic.Image("icon/48/categories/applications-graphics.png"));
+ dl2.addTop(t5);
+
+ var t6 = new qx.ui.layout.HorizontalBoxLayout;
+ t6.setWidth("20%");
+ t6.setBackgroundColor("orange");
+ t6.setHeight(null);
+ t6.setVerticalChildrenAlign("middle");
+ t6.setHorizontalChildrenAlign("center");
+ t6.setSpacing(4);
+ t6.add(new qx.ui.basic.Image("icon/16/apps/accessories-clock.png"));
+ t6.add(new qx.ui.basic.Label("Hello World"));
+ t6.add(new qx.ui.basic.Image("icon/48/categories/applications-graphics.png"));
+ dl2.addLeft(t6);
+
+ var t7 = new qx.ui.layout.HorizontalBoxLayout;
+ t7.setHeight("20%");
+ t7.setBackgroundColor("aqua");
+ t7.setWidth(null);
+ t7.setVerticalChildrenAlign("middle");
+ t7.setHorizontalChildrenAlign("center");
+ t7.setSpacing(4);
+ t7.add(new qx.ui.basic.Image("icon/16/apps/accessories-clock.png"));
+ t7.add(new qx.ui.basic.Label("Hello World"));
+ t7.add(new qx.ui.basic.Image("icon/48/categories/applications-graphics.png"));
+ dl2.addBottom(t7);
+
+ var t8 = new qx.ui.layout.HorizontalBoxLayout;
+ t8.setWidth("20%");
+ t8.setBackgroundColor("lime");
+ t8.setHeight(null);
+ t8.setVerticalChildrenAlign("middle");
+ t8.setHorizontalChildrenAlign("center");
+ t8.setSpacing(4);
+ t8.add(new qx.ui.basic.Image("icon/16/apps/accessories-clock.png"));
+ t8.add(new qx.ui.basic.Label("Hello World"));
+ t8.add(new qx.ui.basic.Image("icon/48/categories/applications-graphics.png"));
+ dl2.addRight(t8);
+
+
+
+
+
+ var hb1 = new qx.ui.layout.HorizontalBoxLayout;
+
+ hb1.setBackgroundColor("silver");
+ hb1.setVerticalChildrenAlign("middle");
+ hb1.setHorizontalChildrenAlign("center");
+ hb1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ hb1.setWidth(null);
+ hb1.setHeight(null);
+ hb1.add(new qx.ui.basic.Image("icon/64/apps/accessories-clock.png"));
+
+ dl2.add(hb1);
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/DockLayout_6.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/DockLayout_6.html
new file mode 100644
index 0000000000..9ae310189d
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/DockLayout_6.html
@@ -0,0 +1,71 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ Simple Test for qx.ui.layout.DockLayout. But with a dynamic child. Simple click on "Hello World" to see the effect.
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var dl1 = new qx.ui.layout.DockLayout;
+
+ dl1.setTop(48);
+ dl1.setLeft(20);
+ dl1.setRight(335);
+ dl1.setBottom(48);
+
+ dl1.setBorder(2, "outset");
+ dl1.setBackgroundColor("white");
+
+ d.add(dl1);
+
+
+
+ var t1 = new qx.ui.basic.Terminator;
+ t1.setHeight(50);
+ t1.setBackgroundColor("white");
+ t1.setBorder(qx.renderer.border.BorderPresets.getInstance().inset);
+ dl1.addTop(t1);
+
+ var t2 = new qx.ui.basic.Label("Hello World");
+ t2.setHeight(null);
+ t2.setBackgroundColor("white");
+ t2.setPadding(10);
+ t2.setBorder(qx.renderer.border.BorderPresets.getInstance().inset);
+ dl1.addLeft(t2);
+
+ var t3 = new qx.ui.layout.HorizontalBoxLayout;
+
+ t3.setWidth(null);
+ t3.setHeight(null);
+ t3.setBorder(qx.renderer.border.BorderPresets.getInstance().inset);
+ t3.setBackgroundColor("white");
+ t3.setHorizontalChildrenAlign("center");
+ t3.setVerticalChildrenAlign("middle");
+
+ dl1.add(t3);
+
+ t3.add(new qx.ui.basic.Image("icon/128/categories/applications-games.png"));
+
+
+
+ t2.addEventListener("click", function(e) {
+ this.setHtml(this.getHtml() == "Hello World" ? "Real long text, especially to test this cool behaviour" : "Hello World");
+ });
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/DragAndDropManager_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/DragAndDropManager_1.html
new file mode 100644
index 0000000000..1412a37315
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/DragAndDropManager_1.html
@@ -0,0 +1,131 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Test for drag&#38;drop implementation.</p>
+ <p>Changing the action using the modifier keys (Shift, Alt, Control) might not work in Safari.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var a1 = new qx.ui.basic.Atom("Drag Me");
+ a1.set({ backgroundColor: "white", border: qx.renderer.border.BorderPresets.getInstance().groove });
+ a1.setPadding(10);
+ a1.setLocation(20, 48);
+ d.add(a1);
+
+
+ function handleDragStart(e)
+ {
+ e.addData(qx.util.Mime.TEXT, "Plain text");
+ e.addData(qx.util.Mime.HTML, "Some <strong>HTML</strong>");
+
+ e.addAction("copy");
+ e.addAction("move");
+ e.addAction("alias");
+
+ e.startDrag();
+ };
+
+ function handleDragDrop( e )
+ {
+ var type = e.getDropDataTypes()[0];
+ var data = e.getData(type);
+
+ this.debug("Drag&Drop Action: " + e.getAction());
+
+ switch(type)
+ {
+ case qx.util.Mime.TEXT:
+ case qx.util.Mime.HTML:
+ this.setLabel(data);
+ break;
+ };
+ };
+
+ function handleDragOver(e) {
+ e.getTarget().setBackgroundColor("#f2f2f2");
+ };
+
+ function handleDragOut(e) {
+ e.getTarget().setBackgroundColor("#fff");
+ };
+
+ function handleDragEnd(e)
+ {
+ // we don't need to do anything here
+ // If we had a succesful move action we might have removed
+ // the source here or something else
+ };
+
+ a1.addEventListener("dragstart", handleDragStart);
+
+
+
+
+ var w1 = new qx.ui.basic.Atom("Drop to me");
+ w1.set({ backgroundColor: "white", border: qx.renderer.border.BorderPresets.getInstance().groove, width: 100, height: 100, top: 100, left: 20, horizontalAlign: "center" });
+ w1.setDropDataTypes([qx.util.Mime.HTML, qx.util.Mime.TEXT]);
+ w1.addEventListener("dragdrop", handleDragDrop);
+ w1.addEventListener("dragover", handleDragOver);
+ w1.addEventListener("dragout", handleDragOut);
+
+ var w2 = new qx.ui.basic.Atom("Drop to me");
+ w2.set({ backgroundColor: "white", border: qx.renderer.border.BorderPresets.getInstance().groove, width: 100, height: 100, top: 230, left: 20, horizontalAlign: "center" });
+ w2.setDropDataTypes([qx.util.Mime.HTML, qx.util.Mime.TEXT]);
+ w2.addEventListener("dragdrop", handleDragDrop);
+ w2.addEventListener("dragover", handleDragOver);
+ w2.addEventListener("dragout", handleDragOut);
+
+ var w3 = new qx.ui.basic.Atom("Drop to me");
+ w3.set({ backgroundColor: "white", border: qx.renderer.border.BorderPresets.getInstance().groove, width: 100, height: 100, top: 100, left: 150, horizontalAlign: "center" });
+ w3.setDropDataTypes([qx.util.Mime.HTML, qx.util.Mime.TEXT]);
+ w3.addEventListener("dragdrop", handleDragDrop);
+ w3.addEventListener("dragover", handleDragOver);
+ w3.addEventListener("dragout", handleDragOut);
+
+ var w4 = new qx.ui.basic.Atom("Drop to me");
+ w4.set({ backgroundColor: "white", border: qx.renderer.border.BorderPresets.getInstance().groove, width: 100, height: 100, top: 230, left: 150, horizontalAlign: "center" });
+ w4.setDropDataTypes([qx.util.Mime.HTML, qx.util.Mime.TEXT]);
+ w4.addEventListener("dragdrop", handleDragDrop);
+ w4.addEventListener("dragover", handleDragOver);
+ w4.addEventListener("dragout", handleDragOut);
+
+
+
+ var f1 = new qx.ui.layout.CanvasLayout;
+ f1.set({ backgroundColor: "orange", width: 230, height: 120, top: 350, left: 20 });
+
+ var w5 = new qx.ui.basic.Atom("Drop to me");
+ w5.set({ backgroundColor: "white", border: qx.renderer.border.BorderPresets.getInstance().groove, width: 100, height: 100, top: 10, horizontalAlign: "center" });
+ w5.setDropDataTypes([qx.util.Mime.HTML, qx.util.Mime.TEXT]);
+ w5.addEventListener("dragdrop", handleDragDrop);
+ w5.addEventListener("dragover", handleDragOver);
+ w5.addEventListener("dragout", handleDragOut);
+
+ var w6 = new qx.ui.basic.Atom("Drop to me");
+ w6.set({ backgroundColor: "white", border: qx.renderer.border.BorderPresets.getInstance().groove, width: 100, height: 100, top: 10, right: 0, horizontalAlign: "center" });
+ w6.setDropDataTypes([qx.util.Mime.HTML, qx.util.Mime.TEXT]);
+ w6.addEventListener("dragdrop", handleDragDrop);
+ w6.addEventListener("dragover", handleDragOver);
+ w6.addEventListener("dragout", handleDragOut);
+
+ f1.add(w5, w6);
+ d.add(w1, w2, w3, w4, f1);
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/DragAndDropManager_2.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/DragAndDropManager_2.html
new file mode 100644
index 0000000000..31bf712a05
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/DragAndDropManager_2.html
@@ -0,0 +1,135 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Test for drag&#38;drop implementation.</p>
+ <p>Changing the action using the modifier keys (Shift, Alt, Control) might not work in Safari.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var a1 = new qx.ui.basic.Atom("Drag Me");
+ a1.set({ backgroundColor: "white", border: qx.renderer.border.BorderPresets.getInstance().groove });
+ a1.setPadding(10);
+ a1.setLocation(20, 48);
+ d.add(a1);
+
+
+
+
+ function printEvent(e) {
+ return "TARGET:" + (e.getTarget() ? e.getTarget().toHashCode() : "null") + " [ORIG:" + (e.getOriginalTarget() ? e.getOriginalTarget().toHashCode() : "null") + "] [REL:" + (e.getRelatedTarget() ? e.getRelatedTarget().toHashCode() : "null") + "]";
+ };
+
+ function handleDragStart(e)
+ {
+ this.debug("Fire DragStart: " + printEvent(e));
+
+ e.addData(qx.util.Mime.TEXT, "Plain text");
+ e.addData(qx.util.Mime.HTML, "Some <strong>HTML</strong>");
+
+ e.addAction("copy");
+ e.addAction("move");
+ e.addAction("alias");
+
+ if (feedbackCheckBox.isChecked()) {
+ var feedbackWidget = new qx.ui.basic.Atom("Some HTML", "icon/16/file-new.png");
+ feedbackWidget.set({ border:new qx.renderer.border.Border(1, "dashed", "gray"),
+ opacity:0.7 });
+ feedbackWidget.setPadding(2);
+
+ e.setFeedbackWidget(feedbackWidget, 15, 0, true);
+ e.setCursorPosition(15, 25);
+ }
+
+ e.startDrag();
+ };
+
+ function handleDragDrop( e )
+ {
+ this.debug("Fire DragDrop: " + printEvent(e));
+
+ var type = e.getDropDataTypes()[0];
+ var data = e.getData(type);
+
+ switch(type)
+ {
+ case qx.util.Mime.TEXT:
+ case qx.util.Mime.HTML:
+ this.setLabel(data);
+ break;
+ };
+ };
+
+ function handleDragOver(e)
+ {
+ this.debug("Fire DragOver: " + printEvent(e));
+ e.getTarget().setBackgroundColor("#f2f2f2");
+ };
+
+ function handleDragOut(e)
+ {
+ this.debug("Fire DragOut: " + printEvent(e));
+ e.getTarget().setBackgroundColor("#fff");
+ };
+
+ function handleDragEnd(e) {
+ this.debug("Fire DragEnd: " + printEvent(e));
+ };
+
+
+
+
+ a1.addEventListener("dragstart", handleDragStart);
+ a1.addEventListener("dragend", handleDragEnd);
+
+
+ var feedbackCheckBox = new qx.ui.form.CheckBox("Show feedback");
+ feedbackCheckBox.setLocation(120, 55);
+
+ var w1 = new qx.ui.basic.Atom("Drop to me");
+ w1.set({ backgroundColor: "white", border: qx.renderer.border.BorderPresets.getInstance().groove, width: 100, height: 100, top: 100, left: 20, horizontalAlign: "center" });
+ w1.setDropDataTypes([qx.util.Mime.HTML, qx.util.Mime.TEXT]);
+ w1.addEventListener("dragdrop", handleDragDrop);
+ w1.addEventListener("dragover", handleDragOver);
+ w1.addEventListener("dragout", handleDragOut);
+
+ var w2 = new qx.ui.basic.Atom("Drop to me");
+ w2.set({ backgroundColor: "white", border: qx.renderer.border.BorderPresets.getInstance().groove, width: 100, height: 100, top: 200, left: 20, horizontalAlign: "center" });
+ w2.setDropDataTypes([qx.util.Mime.HTML, qx.util.Mime.TEXT]);
+ w2.addEventListener("dragdrop", handleDragDrop);
+ w2.addEventListener("dragover", handleDragOver);
+ w2.addEventListener("dragout", handleDragOut);
+
+ var w3 = new qx.ui.basic.Atom("Drop to me");
+ w3.set({ backgroundColor: "white", border: qx.renderer.border.BorderPresets.getInstance().groove, width: 100, height: 100, top: 100, left: 150, horizontalAlign: "center" });
+ w3.setDropDataTypes([qx.util.Mime.HTML, qx.util.Mime.TEXT]);
+ w3.addEventListener("dragdrop", handleDragDrop);
+ w3.addEventListener("dragover", handleDragOver);
+ w3.addEventListener("dragout", handleDragOut);
+
+ var w4 = new qx.ui.basic.Atom("Drop to me");
+ w4.set({ backgroundColor: "white", border: qx.renderer.border.BorderPresets.getInstance().groove, width: 100, height: 100, top: 200, left: 150, horizontalAlign: "center" });
+ w4.setDropDataTypes([qx.util.Mime.HTML, qx.util.Mime.TEXT]);
+ w4.addEventListener("dragdrop", handleDragDrop);
+ w4.addEventListener("dragover", handleDragOver);
+ w4.addEventListener("dragout", handleDragOut);
+
+ d.add(feedbackCheckBox, w1, w2, w3, w4);
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/EnabledDisabled_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/EnabledDisabled_1.html
new file mode 100644
index 0000000000..002562e2da
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/EnabledDisabled_1.html
@@ -0,0 +1,230 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Some test for the enable property in QxObject which will be extended from qx.ui.core.Widget and any other
+ widget which need additional handling on a change of this property. Keep in mind: Disabled QxWidgets will be ignored
+ from the QxEventManager and the qx.event.handler.FocusHandler.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var w1 = new qx.ui.basic.Label("Basic Container");
+
+ with(w1)
+ {
+ setWidth(75);
+ setLeft(20);
+ setTop(48);
+ setHeight(50);
+ setWidth(80);
+ setBackgroundColor("#fff");
+ setColor("blue");
+ setTabIndex(1);
+ setBorder(new qx.renderer.border.Border(2, "solid", "blue"));
+ setEnabled(false);
+ };
+
+ d.add(w1);
+
+ w1.addEventListener("mouseover", function(e)
+ {
+ if( this.getEnabled() )
+ this.getElement().style.color = "red";
+ });
+
+ w1.addEventListener("mouseout", function(e)
+ {
+ if( this.getEnabled() )
+ this.getElement().style.color = "blue";
+ });
+
+ var c1t = new qx.ui.form.CheckBox("Enabled");
+ with(c1t)
+ {
+ setTop(60);
+ setLeft(220);
+ addEventListener("changeChecked", function(e) { w1.setEnabled(e.getData()); });
+ };
+
+ d.add(c1t);
+
+ //------
+ // atom
+ //------
+
+ var a1 = new qx.ui.basic.Atom("Atom", "icon/32/apps/accessories-clock.png");
+
+ with(a1)
+ {
+ setTop(190);
+ setLeft(20);
+ setEnabled(false);
+ setPadding(2, 4);
+ setBackgroundColor("#FFFF6D");
+ };
+
+ d.add(a1);
+
+ var swa1 = new qx.ui.form.CheckBox("Enabled");
+ with(swa1)
+ {
+ setTop(196);
+ setLeft(220);
+ addEventListener("changeChecked", function(e) { a1.setEnabled(e.getData()); });
+ };
+
+ d.add(swa1);
+
+ //--------
+ // button
+ //--------
+
+ var btn1 = new qx.ui.form.Button("Button No #1");
+ with(btn1)
+ {
+ setTop(244);
+ setLeft(20);
+ setEnabled(false);
+ };
+
+ d.add(btn1);
+
+ var swbtn1 = new qx.ui.form.CheckBox("Enabled");
+ with(swbtn1)
+ {
+ setTop(244);
+ setLeft(220);
+ addEventListener("changeChecked", function(e) { btn1.setEnabled(e.getData()); });
+ };
+
+ d.add(swbtn1);
+
+ //-------------
+ // radiobutton
+ //-------------
+
+ var rb1 = new qx.ui.form.RadioButton("Radio button");
+ with(rb1)
+ {
+ setTop(292);
+ setLeft(20);
+ setEnabled(false);
+ };
+
+ d.add(rb1);
+
+ var swrb1 = new qx.ui.form.CheckBox("Enabled");
+ with(swrb1)
+ {
+ setTop(292);
+ setLeft(220);
+ addEventListener("changeChecked", function(e) { rb1.setEnabled(e.getData()); });
+ };
+
+ d.add(swrb1);
+
+ //----------
+ // checkbox
+ //----------
+
+ var cb1 = new qx.ui.form.CheckBox("Checkbox");
+ with(cb1)
+ {
+ setTop(340);
+ setLeft(20);
+ setEnabled(false);
+ };
+
+ d.add(cb1);
+
+ var swcb1 = new qx.ui.form.CheckBox("Enabled");
+ with(swcb1)
+ {
+ setTop(340);
+ setLeft(220);
+ addEventListener("changeChecked", function(e) { cb1.setEnabled(e.getData()); });
+ };
+
+ d.add(swcb1);
+
+ //-----------
+ // TextField
+ //-----------
+
+ var tf1 = new qx.ui.form.TextField;
+ with(tf1)
+ {
+ setTop(388);
+ setLeft(20);
+ setEnabled(false);
+ };
+
+ d.add(tf1);
+
+ var swtf1 = new qx.ui.form.CheckBox("Enabled");
+ with(swtf1)
+ {
+ setTop(388);
+ setLeft(220);
+ addEventListener("changeChecked", function(e) { tf1.setEnabled(e.getData()); });
+ };
+
+ d.add(swtf1);
+
+ //-----------
+ // ComboBox
+ //-----------
+
+ var cb1 = new qx.ui.form.ComboBox;
+ with(cb1)
+ {
+ setTop(436);
+ setLeft(20);
+ setEnabled(false);
+ setEditable(true);
+ };
+
+ d.add(cb1);
+
+ cb1.addEventListener("beforeInitialOpen", function(e)
+ {
+ var item;
+
+ for(var i=1; i<=30; i++)
+ {
+ item = new qx.ui.form.ListItem("Item No " + i);
+ !(i % 10) && (item.setEnabled(false));
+ cb1.add(item);
+ };
+ });
+
+ var swcb1 = new qx.ui.form.CheckBox("Enabled");
+ with(swcb1)
+ {
+ setTop(436);
+ setLeft(220);
+ addEventListener("changeChecked", function(e) { cb1.setEnabled(e.getData()); });
+ };
+
+ d.add(swcb1);
+
+ });
+
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/FieldSet_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/FieldSet_1.html
new file mode 100644
index 0000000000..6257c2b0b8
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/FieldSet_1.html
@@ -0,0 +1,141 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>A more complex example than the previous one. Use layout managers for its content. Configured minWidth of the qx.ui.groupbox.GroupBox with "auto".</p>
+ </div>
+
+ <fieldset style="position:absolute; top:48px; left:400px; width:200px; height:100px"><legend>builtin</legend>content content content content content content content content content content content content content content content</fieldset>
+
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var fs = new qx.ui.groupbox.GroupBox("My first Fieldset", "icon/16/apps/accessories-clock.png");
+
+ with(fs)
+ {
+ setWidth("40%");
+ setBottom(48);
+ setTop(48);
+ setLeft(20);
+
+ setMaxWidth(350);
+ setMinWidth("auto");
+ };
+
+ d.add(fs);
+
+
+
+
+ var fsl = new qx.ui.layout.VerticalBoxLayout;
+ fsl.setLeft(0);
+ fsl.setRight(0);
+ fsl.setHeight("auto");
+ fsl.setSpacing(4);
+ fs.add(fsl);
+
+
+
+
+ var r1 = new qx.ui.layout.HorizontalBoxLayout;
+ r1.setLeft(0);
+ r1.setWidth("100%");
+ r1.setHeight("auto");
+ r1.setVerticalChildrenAlign("middle");
+ fsl.add(r1);
+
+ var a1 = new qx.ui.basic.Atom("TextField 1");
+ with(a1)
+ {
+ setLeft(0);
+ setWidth("40%");
+ setHorizontalChildrenAlign("left");
+ };
+
+ var i1 = new qx.ui.form.TextField;
+ with(i1)
+ {
+ setRight(0);
+ setWidth("60%");
+ };
+
+ r1.add(a1, i1);
+
+
+
+
+
+ var r2 = new qx.ui.layout.HorizontalBoxLayout;
+ r2.setLeft(0);
+ r2.setWidth("100%");
+ r2.setHeight("auto");
+ r2.setVerticalChildrenAlign("middle");
+ fsl.add(r2);
+
+ var a2 = new qx.ui.basic.Atom("TextField 2", "icon/16/apps/preferences-desktop-theme.png");
+ with(a2)
+ {
+ setLeft(0);
+ setWidth("40%");
+ setHorizontalChildrenAlign("left");
+ };
+
+ var i2 = new qx.ui.form.TextField;
+ with(i2)
+ {
+ setRight(0);
+ setWidth("60%");
+ };
+
+ r2.add(a2, i2);
+
+
+
+
+
+
+ var r3 = new qx.ui.layout.HorizontalBoxLayout;
+ r3.setLeft(0);
+ r3.setWidth("100%");
+ r3.setHeight("auto");
+ r3.setVerticalChildrenAlign("middle");
+ fsl.add(r3);
+
+ var a3 = new qx.ui.basic.Atom("TextField 3");
+ with(a3)
+ {
+ setLeft(0);
+ setWidth("40%");
+ setHorizontalChildrenAlign("left");
+ };
+
+ var i3 = new qx.ui.form.TextField;
+ with(i3)
+ {
+ setRight(0);
+ setWidth("60%");
+ };
+
+ r3.add(a3, i3);
+
+
+
+
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Fields_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Fields_1.html
new file mode 100644
index 0000000000..c448ae7694
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Fields_1.html
@@ -0,0 +1,179 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Test the setting of background color of form fields.</p>
+ </div>
+
+ <script type="text/javascript">
+ function changeBackgrounds(parent, color)
+ {
+ var children = parent.getChildren();
+ var child;
+
+ for (var i=0; i<children.length; i++)
+ {
+ child = children[i];
+
+ switch(child.classname)
+ {
+ case 'qx.ui.form.TextArea':
+ case 'qx.ui.form.TextField':
+ case 'qx.ui.form.ComboBox':
+ case 'qx.ui.form.PasswordField':
+ child.setBackgroundColor(color);
+ break;
+ };
+ };
+ };
+
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ function textChange(e) {
+ this.debug("Text changed: " + e.getData());
+ }
+
+ var t1 = new qx.ui.form.TextField;
+ t1.setValue("textfield");
+ t1.setTop(48);
+ t1.setLeft(20);
+
+ t1.addEventListener("changeText", textChange);
+ t1.addEventListener("input", function(e) {
+ this.debug("Input: " + e.getData());
+ });
+
+ d.add(t1);
+
+
+
+
+ var t2 = new qx.ui.form.PasswordField;
+ t2.setValue("passwordfield");
+ t2.setTop(80);
+ t2.setLeft(20);
+
+ t2.addEventListener("changeText", textChange);
+
+ d.add(t2);
+
+
+ var t3 = new qx.ui.form.TextArea;
+ t3.setValue("textarea");
+ t3.setTop(110);
+ t3.setLeft(20);
+ t3.setWidth(300);
+ t3.setHeight(60);
+
+ t3.addEventListener("changeText", textChange);
+
+ d.add(t3);
+
+
+ var t4 = new qx.ui.form.TextField;
+ t4.setValue("textfield");
+ t4.setTop(200);
+ t4.setLeft(20);
+ t4.setWidth(200);
+ t4.setMaxLength(100);
+ t4.setReadOnly(true);
+
+ t4.addEventListener("changeText", textChange);
+
+ d.add(t4);
+
+
+ var t5 = new qx.ui.form.TextField;
+ t5.setValue("You are foo!");
+ t5.setTop(240);
+ t5.setLeft(20);
+
+ t5.addEventListener("changeText", textChange);
+
+ d.add(t5);
+
+ var c1 = new qx.ui.form.ComboBox;
+ c1.setTop(280);
+ c1.setLeft(20);
+
+ c1.addEventListener("beforeInitialOpen", function(e)
+ {
+ var item;
+
+ for(var i=1; i<=30; i++)
+ {
+ item = new qx.ui.form.ListItem("Item No " + i);
+ !(i % 10) && (item.setEnabled(false));
+ c1.add(item);
+ };
+ });
+
+ // this does not work here (if there is no content)
+ c1.setSelected(c1.getList().getFirstChild());
+
+ c1.addEventListener("changeValue", function(e) {
+ this.debug("New value: " + e.getData());
+ });
+
+ c1.addEventListener("changeSelected", function(e) {
+ this.debug("New selected: " + e.getData());
+ });
+
+
+
+
+ var b1 = new qx.ui.form.CheckBox("Editable");
+
+ b1.set({ top: 282, left: 150 });
+
+ b1.addEventListener("changeChecked", function(e) {
+ c1.setEditable(e.getData());
+ });
+
+
+ var b2 = new qx.ui.form.Button("red", "icon/16/actions/format-color.png"); b2.set({left:10,top:10});
+ var b3 = new qx.ui.form.Button("green", "icon/16/actions/format-color.png"); b3.set({left:10,top:40});
+ var b4 = new qx.ui.form.Button("white", "icon/16/actions/format-color.png"); b4.set({left:10,top:70});
+
+ b2.addEventListener("click", function(e) { changeBackgrounds(d,this.getLabel()); });
+ b3.addEventListener("click", function(e) { changeBackgrounds(d,this.getLabel()); });
+ b4.addEventListener("click", function(e) { changeBackgrounds(d,this.getLabel()); });
+
+ var fs = new qx.ui.groupbox.GroupBox("BackgroundColor");
+ fs.set({left:400,top:50,width:150,height:"auto"});
+ fs.add(b2,b3,b4);
+
+
+
+ d.add(c1, b1, fs);
+
+
+
+
+
+
+
+
+ // Color Themes
+ qx.manager.object.ColorManager.getInstance().createThemeList(d, 20, 320);
+
+
+
+
+
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/FlowLayout_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/FlowLayout_1.html
new file mode 100644
index 0000000000..da53826fcc
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/FlowLayout_1.html
@@ -0,0 +1,319 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ Tests for the new implementation of the qx.ui.layout.FlowLayout widget.
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+
+
+ var flow1 = new qx.ui.layout.FlowLayout;
+
+ flow1.setTop(48);
+ flow1.setLeft(20);
+ flow1.setRight(335);
+ flow1.setBottom(200);
+
+ // flow1.setBorder(qx.renderer.border.BorderPresets.getInstance().groove);
+ // flow1.setPadding(8);
+
+ flow1.setHorizontalSpacing(4);
+ flow1.setVerticalSpacing(4);
+
+ // flow1.setHorizontalChildrenAlign("right");
+ // flow1.setVerticalChildrenAlign("bottom");
+
+ // flow1.setReverseChildrenOrder(true);
+
+ d.add(flow1);
+
+
+
+ var w1 = new qx.ui.basic.Terminator;
+
+ w1.setBackgroundColor("orange");
+ w1.setWidth(300);
+ w1.setHeight(20);
+
+
+ var w2 = new qx.ui.basic.Terminator;
+
+ w2.setBackgroundColor("blue");
+ w2.setWidth(200);
+ w2.setHeight(50);
+
+
+ var w3 = new qx.ui.basic.Terminator;
+
+ w3.setBackgroundColor("green");
+ w3.setWidth(100);
+ w3.setHeight(150);
+ w3.setMarginLeft(20);
+
+ var w4 = new qx.ui.basic.Terminator;
+
+ w4.setBackgroundColor("purple");
+ w4.setWidth("30%");
+ w4.setHeight("10%");
+
+ var w5 = new qx.ui.basic.Terminator;
+
+ w5.setBackgroundColor("yellow");
+ w5.setWidth(50);
+ w5.setHeight(80);
+
+ var w6 = new qx.ui.basic.Terminator;
+
+ w6.setBackgroundColor("red");
+ w6.setWidth(400);
+ w6.setHeight(50);
+
+ var i1 = new qx.ui.basic.Image("icon/32/apps/accessories-clock.png");
+ var i2 = new qx.ui.basic.Image("icon/32/actions/format-color.png");
+
+ i2.setResizeToInner(true);
+
+ var c1 = new qx.ui.basic.Label("Hello World");
+ var c2 = new qx.ui.basic.Label("<ol><li>Simple HTML List</li><li>with one</li><li>and another item</li></ol>");
+
+ var a1 = new qx.ui.form.Button("Press", "icon/16/apps/preferences-desktop-multimedia.png");
+
+
+ flow1.add(w1, i1, w2, w3, a1, c2, w4, i2, w5, c1, w6);
+
+
+
+
+
+ w1.addEventListener("click", function(e) {
+ this.setMaxWidth(this.getMaxWidth() == 50 ? null : 50);
+ });
+
+ w2.addEventListener("click", function(e)
+ {
+ if (this.getWidth() == 200)
+ {
+ this.setWidth(100);
+ this.setHeight(200);
+ }
+ else
+ {
+ this.setWidth(200);
+ this.setHeight(50);
+ };
+ });
+
+ i1.addEventListener("click", function(e) {
+ this.setSource(this.getSource() == "icon/32/apps/accessories-clock.png" ? "icon/128/apps/accessories-clock.png" : "icon/32/apps/accessories-clock.png");
+ });
+
+ i2.addEventListener("click", function(e)
+ {
+ this.setWidth(this.getWidth() == "auto" ? 128 : "auto");
+ this.setHeight(this.getHeight() == "auto" ? 128 : "auto");
+ });
+
+ c1.addEventListener("click", function(e) {
+ this.setHtml(this.getHtml() == "Hello World" ? "Yeah, qooxdoo is great" : "Hello World");
+ });
+
+
+
+
+ // *************************************************************
+
+ var controlBox = new qx.ui.layout.VerticalBoxLayout;
+
+ controlBox.setLeft(20);
+ controlBox.setBottom(48);
+ controlBox.setRight(335);
+ controlBox.setWidth(null);
+ controlBox.setHeight("auto");
+ controlBox.setBorder(qx.renderer.border.BorderPresets.getInstance().groove);
+ controlBox.setSpacing(4);
+ controlBox.setPadding(8);
+
+ d.add(controlBox);
+
+
+
+
+ var cc0 = new qx.ui.basic.Label("Spacing: ");
+ cc0.setWidth(50);
+
+ var bc0 = new qx.ui.form.Button("0x0", "icon/16/actions/dialog-ok.png");
+ var bc1 = new qx.ui.form.Button("4x4", "icon/16/actions/dialog-ok.png");
+ var bc2 = new qx.ui.form.Button("8x8", "icon/16/actions/dialog-ok.png");
+ var bc3 = new qx.ui.form.Button("20x20", "icon/16/actions/dialog-ok.png");
+ var bc4 = new qx.ui.form.Button("0x10", "icon/16/actions/dialog-ok.png");
+ var bc5 = new qx.ui.form.Button("10x0", "icon/16/actions/dialog-ok.png");
+
+ bc0.addEventListener("execute", function(e) {
+ flow1.setHorizontalSpacing(0);
+ flow1.setVerticalSpacing(0);
+ });
+
+ bc1.addEventListener("execute", function(e) {
+ flow1.setHorizontalSpacing(4);
+ flow1.setVerticalSpacing(4);
+ });
+
+ bc2.addEventListener("execute", function(e) {
+ flow1.setHorizontalSpacing(8);
+ flow1.setVerticalSpacing(8);
+ });
+
+ bc3.addEventListener("execute", function(e) {
+ flow1.setHorizontalSpacing(20);
+ flow1.setVerticalSpacing(20);
+ });
+
+ bc4.addEventListener("execute", function(e) {
+ flow1.setHorizontalSpacing(0);
+ flow1.setVerticalSpacing(10);
+ });
+
+ bc5.addEventListener("execute", function(e) {
+ flow1.setHorizontalSpacing(10);
+ flow1.setVerticalSpacing(0);
+ });
+
+ var hc0 = new qx.ui.layout.HorizontalBoxLayout;
+
+ hc0.add(cc0, bc0, bc1, bc2, bc3, bc4, bc5);
+ hc0.setVerticalChildrenAlign("middle");
+ hc0.setHeight("auto");
+
+ controlBox.add(hc0);
+
+
+
+
+
+
+ var cr0 = new qx.ui.basic.Label("Order: ");
+ cr0.setWidth(50);
+
+ var br0 = new qx.ui.form.Button("Default", "icon/16/actions/dialog-ok.png");
+ var br1 = new qx.ui.form.Button("Reversed", "icon/16/actions/dialog-ok.png");
+
+ br0.addEventListener("execute", function(e) {
+ flow1.setReverseChildrenOrder(false);
+ });
+
+ br1.addEventListener("execute", function(e) {
+ flow1.setReverseChildrenOrder(true);
+ });
+
+
+
+ var hc1 = new qx.ui.layout.HorizontalBoxLayout;
+
+ hc1.add(cr0, br0, br1);
+ hc1.setVerticalChildrenAlign("middle");
+ hc1.setHeight("auto");
+
+ controlBox.add(hc1);
+
+
+
+
+
+
+
+ var cr0 = new qx.ui.basic.Label("Align: ");
+ cr0.setWidth(50);
+
+ var br0 = new qx.ui.form.Button("Top", "icon/16/actions/dialog-ok.png");
+ var br1 = new qx.ui.form.Button("Bottom", "icon/16/actions/dialog-ok.png");
+ var br2 = new qx.ui.form.Button("Left", "icon/16/actions/dialog-ok.png");
+ var br3 = new qx.ui.form.Button("Right", "icon/16/actions/dialog-ok.png");
+
+ br0.addEventListener("execute", function(e) {
+ flow1.setVerticalChildrenAlign("top");
+ });
+
+ br1.addEventListener("execute", function(e) {
+ flow1.setVerticalChildrenAlign("bottom");
+ });
+
+ br2.addEventListener("execute", function(e) {
+ flow1.setHorizontalChildrenAlign("left");
+ });
+
+ br3.addEventListener("execute", function(e) {
+ flow1.setHorizontalChildrenAlign("right");
+ });
+
+
+ var hc1 = new qx.ui.layout.HorizontalBoxLayout;
+
+ hc1.add(cr0, br0, br1, br2, br3);
+ hc1.setVerticalChildrenAlign("middle");
+ hc1.setHeight("auto");
+
+ controlBox.add(hc1);
+
+
+
+
+
+
+
+ var ca0 = new qx.ui.basic.Label("Children: ");
+ ca0.setWidth(50);
+
+ var ba0 = new qx.ui.form.Button("New Atom", "icon/16/actions/dialog-ok.png");
+ var ba1 = new qx.ui.form.Button("New Image", "icon/16/actions/dialog-ok.png");
+ var ba2 = new qx.ui.form.Button("New Atom to #3", "icon/16/actions/dialog-ok.png");
+ var ba3 = new qx.ui.form.Button("New Image to #6", "icon/16/actions/dialog-ok.png");
+ var ba4 = new qx.ui.form.Button("Remove First", "icon/16/actions/dialog-ok.png");
+
+ ba0.addEventListener("execute", function(e) {
+ flow1.add(new qx.ui.basic.Atom("New Atom", "icon/16/places/services.png"));
+ });
+
+ ba1.addEventListener("execute", function(e) {
+ flow1.add(new qx.ui.basic.Image("icon/64/apps/accessories-disk-usage.png"));
+ });
+
+ ba2.addEventListener("execute", function(e) {
+ flow1.addAt(new qx.ui.basic.Atom("New Atom", "icon/16/apps/preferences-desktop-multimedia.png"), 3);
+ });
+
+ ba3.addEventListener("execute", function(e) {
+ flow1.addAt(new qx.ui.basic.Image("icon/64/actions/format-color.png"), 6);
+ });
+
+ ba4.addEventListener("execute", function(e) {
+ flow1.remove(flow1.getFirstChild());
+ });
+
+ var ha1 = new qx.ui.layout.HorizontalBoxLayout;
+
+ ha1.add(ca0, ba0, ba1, ba2, ba3, ba4);
+ ha1.setVerticalChildrenAlign("middle");
+ ha1.setHeight("auto");
+
+ controlBox.add(ha1);
+
+
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/FlowLayout_2.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/FlowLayout_2.html
new file mode 100644
index 0000000000..79c897b1f4
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/FlowLayout_2.html
@@ -0,0 +1,193 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ Tests for the new implementation of the qx.ui.layout.FlowLayout widget.
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var flow1 = new qx.ui.layout.FlowLayout;
+
+ flow1.setTop(48);
+ flow1.setLeft(20);
+ flow1.setRight(335);
+ flow1.setBottom(200);
+
+ // flow1.setBorder(qx.renderer.border.BorderPresets.getInstance().ridge);
+ // flow1.setPadding(8);
+
+ flow1.setHorizontalSpacing(4);
+ flow1.setVerticalSpacing(4);
+
+ // flow1.setOverflow("scrollY");
+
+ d.add(flow1);
+
+ for (var i=0, witer; i<100; i++)
+ {
+ witer = new qx.ui.basic.Terminator;
+
+ witer.setBackgroundColor("white");
+ witer.setWidth(50);
+ witer.setHeight(50);
+
+ flow1.add(witer);
+ };
+
+
+ // *************************************************************
+
+ var controlBox = new qx.ui.layout.VerticalBoxLayout;
+
+ controlBox.setLeft(20);
+ controlBox.setBottom(48);
+ controlBox.setRight(335);
+ controlBox.setWidth(null);
+ controlBox.setHeight("auto");
+ controlBox.setBorder(qx.renderer.border.BorderPresets.getInstance().groove);
+ controlBox.setSpacing(4);
+ controlBox.setPadding(8);
+
+ d.add(controlBox);
+
+
+
+
+ var cc0 = new qx.ui.basic.Label("Spacing: ");
+ cc0.setWidth(50);
+
+ var bc0 = new qx.ui.form.Button("0x0", "icon/16/actions/dialog-ok.png");
+ var bc1 = new qx.ui.form.Button("4x4", "icon/16/actions/dialog-ok.png");
+ var bc2 = new qx.ui.form.Button("8x8", "icon/16/actions/dialog-ok.png");
+ var bc3 = new qx.ui.form.Button("20x20", "icon/16/actions/dialog-ok.png");
+ var bc4 = new qx.ui.form.Button("0x10", "icon/16/actions/dialog-ok.png");
+ var bc5 = new qx.ui.form.Button("10x0", "icon/16/actions/dialog-ok.png");
+
+ bc0.addEventListener("execute", function(e) {
+ flow1.setHorizontalSpacing(0);
+ flow1.setVerticalSpacing(0);
+ });
+
+ bc1.addEventListener("execute", function(e) {
+ flow1.setHorizontalSpacing(4);
+ flow1.setVerticalSpacing(4);
+ });
+
+ bc2.addEventListener("execute", function(e) {
+ flow1.setHorizontalSpacing(8);
+ flow1.setVerticalSpacing(8);
+ });
+
+ bc3.addEventListener("execute", function(e) {
+ flow1.setHorizontalSpacing(20);
+ flow1.setVerticalSpacing(20);
+ });
+
+ bc4.addEventListener("execute", function(e) {
+ flow1.setHorizontalSpacing(0);
+ flow1.setVerticalSpacing(10);
+ });
+
+ bc5.addEventListener("execute", function(e) {
+ flow1.setHorizontalSpacing(10);
+ flow1.setVerticalSpacing(0);
+ });
+
+ var hc0 = new qx.ui.layout.HorizontalBoxLayout;
+
+ hc0.add(cc0, bc0, bc1, bc2, bc3, bc4, bc5);
+ hc0.setVerticalChildrenAlign("middle");
+ hc0.setHeight("auto");
+
+ controlBox.add(hc0);
+
+
+
+
+
+
+ var cr0 = new qx.ui.basic.Label("Order: ");
+ cr0.setWidth(50);
+
+ var br0 = new qx.ui.form.Button("Default", "icon/16/actions/dialog-ok.png");
+ var br1 = new qx.ui.form.Button("Reversed", "icon/16/actions/dialog-ok.png");
+
+ br0.addEventListener("execute", function(e) {
+ flow1.setReverseChildrenOrder(false);
+ });
+
+ br1.addEventListener("execute", function(e) {
+ flow1.setReverseChildrenOrder(true);
+ });
+
+
+
+ var hc1 = new qx.ui.layout.HorizontalBoxLayout;
+
+ hc1.add(cr0, br0, br1);
+ hc1.setVerticalChildrenAlign("middle");
+ hc1.setHeight("auto");
+
+ controlBox.add(hc1);
+
+
+
+
+
+
+
+ var ca0 = new qx.ui.basic.Label("Children: ");
+ ca0.setWidth(50);
+
+ var ba0 = new qx.ui.form.Button("New Atom", "icon/16/actions/dialog-ok.png");
+ var ba1 = new qx.ui.form.Button("New Image", "icon/16/actions/dialog-ok.png");
+ var ba2 = new qx.ui.form.Button("New Atom to #3", "icon/16/actions/dialog-ok.png");
+ var ba3 = new qx.ui.form.Button("New Image to #6", "icon/16/actions/dialog-ok.png");
+ var ba4 = new qx.ui.form.Button("Remove First", "icon/16/actions/dialog-ok.png");
+
+ ba0.addEventListener("execute", function(e) {
+ flow1.add(new qx.ui.basic.Atom("New Atom", "icon/16/places/services.png"));
+ });
+
+ ba1.addEventListener("execute", function(e) {
+ flow1.add(new qx.ui.basic.Image("icon/64/apps/accessories-disk-usage.png"));
+ });
+
+ ba2.addEventListener("execute", function(e) {
+ flow1.addAt(new qx.ui.basic.Atom("New Atom", "icon/16/apps/preferences-desktop-multimedia.png"), 3);
+ });
+
+ ba3.addEventListener("execute", function(e) {
+ flow1.addAt(new qx.ui.basic.Image("icon/64/actions/format-color.png"), 6);
+ });
+
+ ba4.addEventListener("execute", function(e) {
+ flow1.remove(flow1.getFirstChild());
+ });
+
+ var ha1 = new qx.ui.layout.HorizontalBoxLayout;
+
+ ha1.add(ca0, ba0, ba1, ba2, ba3, ba4);
+ ha1.setVerticalChildrenAlign("middle");
+ ha1.setHeight("auto");
+
+ controlBox.add(ha1);
+
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/FlowLayout_3.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/FlowLayout_3.html
new file mode 100644
index 0000000000..84d84ce1e5
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/FlowLayout_3.html
@@ -0,0 +1,277 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ Tests for the new implementation of the qx.ui.layout.FlowLayout widget.
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+
+
+ var flow1 = new qx.ui.layout.FlowLayout;
+
+ flow1.setTop(48);
+ flow1.setLeft(20);
+ flow1.setRight(335);
+ // flow1.setWidth("auto");
+ flow1.setHeight("auto");
+
+ flow1.setBorder(qx.renderer.border.BorderPresets.getInstance().groove);
+ flow1.setPadding(8);
+
+ flow1.setHorizontalSpacing(4);
+ flow1.setVerticalSpacing(4);
+
+ // flow1.setReverseChildrenOrder(true);
+
+ d.add(flow1);
+
+
+
+ var w1 = new qx.ui.basic.Terminator;
+
+ w1.setBackgroundColor("orange");
+ w1.setWidth(300);
+ w1.setHeight(20);
+
+
+ var w2 = new qx.ui.basic.Terminator;
+
+ w2.setBackgroundColor("blue");
+ w2.setWidth(200);
+ w2.setHeight(50);
+
+
+ var w3 = new qx.ui.basic.Terminator;
+
+ w3.setBackgroundColor("green");
+ w3.setWidth(100);
+ w3.setHeight(150);
+ w3.setMarginLeft(20);
+
+ var w4 = new qx.ui.basic.Terminator;
+
+ w4.setBackgroundColor("purple");
+ w4.setWidth(100);
+ w4.setHeight(20);
+
+ var w5 = new qx.ui.basic.Terminator;
+
+ w5.setBackgroundColor("yellow");
+ w5.setWidth(50);
+ w5.setHeight(80);
+
+ var w6 = new qx.ui.basic.Terminator;
+
+ w6.setBackgroundColor("red");
+ w6.setWidth(400);
+ w6.setHeight(50);
+
+ var i1 = new qx.ui.basic.Image("icon/32/apps/accessories-clock.png");
+ var i2 = new qx.ui.basic.Image("icon/32/actions/format-color.png");
+
+ i2.setResizeToInner(true);
+
+ var c1 = new qx.ui.basic.Label("Hello World");
+ var c2 = new qx.ui.basic.Label("<ol><li>Simple HTML List</li><li>with one</li><li>and another item</li></ol>");
+
+ var a1 = new qx.ui.form.Button("Press", "icon/16/apps/preferences-desktop-multimedia.png");
+
+
+ flow1.add(w1, i1, w2, w3, a1, c2, w4, i2, w5, c1, w6);
+
+
+
+
+
+ w1.addEventListener("click", function(e) {
+ this.setMaxWidth(this.getMaxWidth() == 50 ? null : 50);
+ });
+
+ w2.addEventListener("click", function(e)
+ {
+ if (this.getWidth() == 200)
+ {
+ this.setWidth(100);
+ this.setHeight(200);
+ }
+ else
+ {
+ this.setWidth(200);
+ this.setHeight(50);
+ };
+ });
+
+ i1.addEventListener("click", function(e) {
+ this.setSource(this.getSource() == "icon/32/apps/accessories-clock.png" ? "icon/128/apps/accessories-clock.png" : "icon/32/apps/accessories-clock.png");
+ });
+
+ i2.addEventListener("click", function(e)
+ {
+ this.setWidth(this.getWidth() == "auto" ? 128 : "auto");
+ this.setHeight(this.getHeight() == "auto" ? 128 : "auto");
+ });
+
+ c1.addEventListener("click", function(e) {
+ this.setHtml(this.getHtml() == "Hello World" ? "Yeah, qooxdoo is great" : "Hello World");
+ });
+
+
+
+
+ // *************************************************************
+
+ var controlBox = new qx.ui.layout.VerticalBoxLayout;
+
+ controlBox.setLeft(20);
+ controlBox.setBottom(48);
+ controlBox.setRight(335);
+ controlBox.setHeight("auto");
+ controlBox.setBorder(qx.renderer.border.BorderPresets.getInstance().groove);
+ controlBox.setSpacing(4);
+ controlBox.setPadding(8);
+
+ d.add(controlBox);
+
+
+
+
+ var cc0 = new qx.ui.basic.Label("Spacing: ");
+ cc0.setWidth(50);
+
+ var bc0 = new qx.ui.form.Button("0x0", "icon/16/actions/dialog-ok.png");
+ var bc1 = new qx.ui.form.Button("4x4", "icon/16/actions/dialog-ok.png");
+ var bc2 = new qx.ui.form.Button("8x8", "icon/16/actions/dialog-ok.png");
+ var bc3 = new qx.ui.form.Button("20x20", "icon/16/actions/dialog-ok.png");
+ var bc4 = new qx.ui.form.Button("0x10", "icon/16/actions/dialog-ok.png");
+ var bc5 = new qx.ui.form.Button("10x0", "icon/16/actions/dialog-ok.png");
+
+ bc0.addEventListener("execute", function(e) {
+ flow1.setHorizontalSpacing(0);
+ flow1.setVerticalSpacing(0);
+ });
+
+ bc1.addEventListener("execute", function(e) {
+ flow1.setHorizontalSpacing(4);
+ flow1.setVerticalSpacing(4);
+ });
+
+ bc2.addEventListener("execute", function(e) {
+ flow1.setHorizontalSpacing(8);
+ flow1.setVerticalSpacing(8);
+ });
+
+ bc3.addEventListener("execute", function(e) {
+ flow1.setHorizontalSpacing(20);
+ flow1.setVerticalSpacing(20);
+ });
+
+ bc4.addEventListener("execute", function(e) {
+ flow1.setHorizontalSpacing(0);
+ flow1.setVerticalSpacing(10);
+ });
+
+ bc5.addEventListener("execute", function(e) {
+ flow1.setHorizontalSpacing(10);
+ flow1.setVerticalSpacing(0);
+ });
+
+ var hc0 = new qx.ui.layout.HorizontalBoxLayout;
+
+ hc0.add(cc0, bc0, bc1, bc2, bc3, bc4, bc5);
+ hc0.setVerticalChildrenAlign("middle");
+ hc0.setHeight("auto");
+
+ controlBox.add(hc0);
+
+
+
+
+
+
+ var cr0 = new qx.ui.basic.Label("Order: ");
+ cr0.setWidth(50);
+
+ var br0 = new qx.ui.form.Button("Default", "icon/16/actions/dialog-ok.png");
+ var br1 = new qx.ui.form.Button("Reversed", "icon/16/actions/dialog-ok.png");
+
+ br0.addEventListener("execute", function(e) {
+ flow1.setReverseChildrenOrder(false);
+ });
+
+ br1.addEventListener("execute", function(e) {
+ flow1.setReverseChildrenOrder(true);
+ });
+
+
+
+ var hc1 = new qx.ui.layout.HorizontalBoxLayout;
+
+ hc1.add(cr0, br0, br1);
+ hc1.setVerticalChildrenAlign("middle");
+ hc1.setHeight("auto");
+
+ controlBox.add(hc1);
+
+
+
+
+
+
+
+ var ca0 = new qx.ui.basic.Label("Children: ");
+ ca0.setWidth(50);
+
+ var ba0 = new qx.ui.form.Button("New Atom", "icon/16/actions/dialog-ok.png");
+ var ba1 = new qx.ui.form.Button("New Image", "icon/16/actions/dialog-ok.png");
+ var ba2 = new qx.ui.form.Button("New Atom to #3", "icon/16/actions/dialog-ok.png");
+ var ba3 = new qx.ui.form.Button("New Image to #6", "icon/16/actions/dialog-ok.png");
+ var ba4 = new qx.ui.form.Button("Remove First", "icon/16/actions/dialog-ok.png");
+
+ ba0.addEventListener("execute", function(e) {
+ flow1.add(new qx.ui.basic.Atom("New Atom", "icon/16/places/services.png"));
+ });
+
+ ba1.addEventListener("execute", function(e) {
+ flow1.add(new qx.ui.basic.Image("icon/64/apps/accessories-disk-usage.png"));
+ });
+
+ ba2.addEventListener("execute", function(e) {
+ flow1.addAt(new qx.ui.basic.Atom("New Atom", "icon/16/apps/preferences-desktop-multimedia.png"), 3);
+ });
+
+ ba3.addEventListener("execute", function(e) {
+ flow1.addAt(new qx.ui.basic.Image("icon/64/actions/format-color.png"), 6);
+ });
+
+ ba4.addEventListener("click", function(e) {
+ flow1.remove(flow1.getFirstChild());
+ });
+
+ var ha1 = new qx.ui.layout.HorizontalBoxLayout;
+
+ ha1.add(ca0, ba0, ba1, ba2, ba3, ba4);
+ ha1.setVerticalChildrenAlign("middle");
+ ha1.setHeight("auto");
+
+ controlBox.add(ha1);
+
+
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/FocusManager_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/FocusManager_1.html
new file mode 100644
index 0000000000..772718afe8
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/FocusManager_1.html
@@ -0,0 +1,108 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Some tests for some of the most used properties of qx.ui.basic.Terminator (coordinates, dimensions, backgroundColor, opacity, ...).</p>
+ <p>Also here are the first test of some widgets which extend qx.ui.basic.Terminator: qx.ui.form.TextField and qx.ui.form.PasswordField. These extended
+ widgets also interacts like the basic QxTerminators with the qx.event.handler.FocusHandler.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var c1 = new qx.ui.basic.Terminator;
+ d.add(c1);
+
+ c1.setTabIndex(1);
+ c1.setHeight(60);
+ c1.setWidth(60);
+ c1.setTop(48);
+ c1.setLeft(20);
+ c1.setBackgroundColor("blue");
+ c1.setOpacity(0.5);
+
+ c1.addEventListener("keydown", function(e){
+ if (e.getKeyIdentifier() != "Space") {
+ return;
+ };
+
+ this.setBackgroundColor("rgb(" + Math.round(Math.random()*255) + "," + Math.round(Math.random()*255) + "," + Math.round(Math.random()*255) + ")");
+ });
+
+
+ var c2 = new qx.ui.basic.Terminator;
+ d.add(c2);
+
+ c2.setTabIndex(2);
+ c2.setHeight(60);
+ c2.setWidth(60);
+ c2.setTop(68);
+ c2.setLeft(40);
+ c2.setBackgroundColor("orange");
+ c2.setOpacity(0.5);
+
+ c2.addEventListener("keydown", function(e){
+ if (e.getKeyIdentifier() != "Space") {
+ return;
+ };
+
+ this.setBackgroundColor("rgb(" + Math.round(Math.random()*255) + "," + Math.round(Math.random()*255) + "," + Math.round(Math.random()*255) + ")");
+ });
+
+
+ var t1 = new qx.ui.form.TextField;
+ t1.setValue("textfield");
+ t1.setTop(140);
+ t1.setLeft(20);
+ t1.setTabIndex(3);
+
+ d.add(t1);
+
+
+
+ var t2 = new qx.ui.form.PasswordField;
+ t2.setValue("passwordfield");
+ t2.setTop(170);
+ t2.setLeft(20);
+ t2.setTabIndex(4);
+
+ d.add(t2);
+
+
+ var t3 = new qx.ui.form.TextArea;
+ t3.setValue("textarea");
+ t3.setTop(200);
+ t3.setLeft(20);
+ t3.setWidth(300);
+ t3.setHeight(60);
+ t3.setTabIndex(5);
+
+ d.add(t3);
+
+
+ var t4 = new qx.ui.form.TextField;
+ t4.setValue("textfield");
+ t4.setTop(300);
+ t4.setLeft(20);
+ t4.setWidth(200);
+ t4.setMaxLength(100);
+ t4.setReadOnly(true);
+ t4.setTabIndex(6);
+
+ d.add(t4);
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Font_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Font_1.html
new file mode 100644
index 0000000000..e63a0fe879
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Font_1.html
@@ -0,0 +1,63 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Testing qx.renderer.font.Font object for QxLabels inside QxAtoms.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var f1 = new qx.ui.layout.CanvasLayout;
+
+ var a1 = new qx.ui.basic.Atom("Hello World");
+
+ var b1 = new qx.ui.form.Button("Serif, 16px");
+ var b2 = new qx.ui.form.Button("Serif, 24px");
+ var b3 = new qx.ui.form.Button("Sans Serif, 16px");
+ var b4 = new qx.ui.form.Button("Sans Serif, 24px");
+
+ b1.addEventListener("execute", function() {
+ a1.getLabelObject().setFont("16px serif");
+ });
+
+ b2.addEventListener("execute", function() {
+ a1.getLabelObject().setFont("24px serif");
+ });
+
+ b3.addEventListener("execute", function() {
+ a1.getLabelObject().setFont("16px sans-serif");
+ });
+
+ b4.addEventListener("execute", function() {
+ a1.getLabelObject().setFont("24px sans-serif");
+ });
+
+ f1.setDimension("auto", "auto");
+ f1.setLocation(20, 48);
+ f1.setBorder("1px solid red");
+
+ a1.setLocation(0, 0);
+ a1.getLabelObject().setFont("16px serif");
+
+ b1.setLocation(200, 48);
+ b2.setLocation(200, 78);
+ b3.setLocation(200, 108);
+ b4.setLocation(200, 138);
+
+ f1.add(a1);
+ qx.ui.core.ClientDocument.getInstance().add(f1, b1, b2, b3, b4);
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/FormUtils_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/FormUtils_1.html
new file mode 100644
index 0000000000..8aa4c89ad7
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/FormUtils_1.html
@@ -0,0 +1,86 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Testing qx.html.Form</p>
+ </div>
+
+ <form id="mainform" style="position: absolute; left:300px; top: 48px">
+ <fieldset>
+ <legend>Basics</legend>
+ <input type="text" name="givenname" value="Given Name"/>
+ <br/>
+ <input type="text" name="name" value="Name"/>
+ <br/>
+ <input type="password" name="password" value="Password"/>
+ </fieldset>
+ <br/>
+ <input type="checkbox" checked="checked" name="human" id="human" value="true"/>
+ <label for="human">Human</label>
+ <br/>
+ <input type="checkbox" name="old" id="old" value="true"/>
+ <label for="old">Old</label>
+ <br/>
+ <input type="radio" name="gender" checked="checked" value="male" id="male"/>
+ <label for="male">Male</label">
+ <br/>
+ <input type="radio" name="gender" value="female" id="female"/>
+ <label for="female">Female</label">
+ <br/>
+ <label for="color">Favorite Color (Single)</label>
+ <br/>
+ <select name="color" id="color">
+ <option value="red">Red</option>
+ <option value="blue">Blue</option>
+ <option value="green">Green</option>
+ <option value="yellow">Yellow</option>
+ <option value="black">Black</option>
+ <option value="white">White</option>
+ </select>
+ <br/>
+ <label for="pets">Your Pets (Multiple)</label>
+ <br/>
+ <select name="pets" id="pets" multiple="multiple" size="3">
+ <option value="dog">Dog</option>
+ <option value="cat">Cat</option>
+ <option value="bird">Bird</option>
+ <option value="rabbit">Rabbit</option>
+ <option value="hamster">Hamster</option>
+ </select>
+ <br/>
+ <input type="submit" value="Send Data"/>
+ </form>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var btn = new qx.ui.form.Button("Encode");
+ btn.setLocation(20, 48);
+ qx.ui.core.ClientDocument.getInstance().add(btn);
+
+ var area = new qx.ui.form.TextArea;
+ area.setLocation(20, 100);
+ area.setDimension(200, 100);
+ qx.ui.core.ClientDocument.getInstance().add(area);
+
+ qx.html.Form.bind(document.getElementById("mainform"), function() {
+ alert("Submitting Form Replacement...");
+ });
+
+ btn.addEventListener("execute", function() {
+ area.setValue(qx.html.Form.encodeForm(document.getElementById("mainform")));
+ });
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Gallery_2.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Gallery_2.html
new file mode 100644
index 0000000000..3a3e2fb9a9
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Gallery_2.html
@@ -0,0 +1,135 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Test file for qx.ui.embed.Gallery</p>
+ </div>
+
+ <style type="text/css">
+ .qx_ui_embed_Gallery .galleryFrame{
+ padding: 2px;
+ }
+
+ .qx_ui_embed_Gallery .galleryCell{
+ border: 1px solid #444;
+ background: #fff;
+ margin: 2px;
+ float: left;
+ overflow: hidden;
+
+ font-family: Tahoma, Verdana, sans-serif;
+ font-size: 10px;
+
+ cursor: default;
+
+ -moz-user-select: none;
+ user-select: none;
+ }
+
+ .qx_ui_embed_Gallery .galleryCell img{
+ vertical-align: bottom;
+ display: block;
+ }
+
+ .qx_ui_embed_Gallery .galleryCell .galleryTitle,
+ .qx_ui_embed_Gallery .galleryCell .galleryComment{
+ background: #eee;
+ padding: 3px 6px;
+ text-align: center;
+ cursor: default;
+ overflow: hidden;
+ white-space: nowrap;
+ }
+
+ .qx_ui_embed_Gallery .galleryCell .galleryTitle{
+ border-bottom: 1px solid #aaa;
+ }
+
+ .qx_ui_embed_Gallery .galleryCell .galleryComment{
+ border-top: 1px solid #aaa;
+ }
+
+ .qx_ui_embed_Gallery .galleryCell-Selected{
+ background: #DCE8F6;
+ border: 1px solid #2760A1;
+ }
+
+ .qx_ui_embed_Gallery .galleryCell-Selected .galleryTitle,
+ .qx_ui_embed_Gallery .galleryCell-Selected .galleryComment{
+ background: #9BBFE7;
+ }
+
+ .qx_ui_embed_Gallery .galleryCell-Selected .galleryTitle{
+ border-bottom: 1px dotted #2760A1;
+ }
+
+ .qx_ui_embed_Gallery .galleryCell-Selected .galleryComment{
+ border-top: 1px dotted #2760A1;
+ }
+
+
+ /* customize */
+
+ .qx_ui_embed_Gallery{
+ background: #fff;
+ padding: 5px;
+ }
+
+ .qx_ui_embed_Gallery .galleryCell{
+ margin: 5px;
+ border: 1px solid #DCDFE8;
+ }
+
+ .qx_ui_embed_Gallery .galleryCell-Selected{
+ border: 1px solid #5E6474;
+ background: #DADDE4;
+ }
+ </style>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var galleryList = [];
+
+ for (var i=0; i<100; i++)
+ {
+ galleryList.push({
+ display : "bmzN9ci5",
+ width : 350,
+ height : 350,
+ thumbWidth : 64,
+ thumbHeight : 64,
+ title : "gohome.png",
+ timestamp : Math.random().toString(),
+ comment : "Cool Comment",
+ id : "7686191121780974-10682",
+ src : qx.manager.object.AliasManager.getInstance().resolvePath("icon/64/devices/video-display.png")
+ });
+ };
+
+ var gallery = new qx.ui.embed.Gallery(galleryList);
+
+ gallery.setLeft(20);
+ gallery.setRight(335);
+ gallery.setTop(48);
+ gallery.setBottom(48);
+ gallery.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ gallery.setShowTitle(false);
+ gallery.setShowComment(false);
+ gallery.setDecorHeight(0);
+
+ qx.ui.core.ClientDocument.getInstance().add(gallery);
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Gallery_3.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Gallery_3.html
new file mode 100644
index 0000000000..0a910697a7
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Gallery_3.html
@@ -0,0 +1,178 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Test file for qx.ui.embed.Gallery, now with QxToolTips assigned.</p>
+ <button onclick="updateAdd()">Update Add</button>
+ </div>
+
+ <style type="text/css">
+ .qx_ui_embed_Gallery .galleryFrame{
+ padding: 2px;
+ }
+
+ .qx_ui_embed_Gallery .galleryCell{
+ border: 1px solid #444;
+ background: #fff;
+ margin: 2px;
+ float: left;
+ overflow: hidden;
+
+ font-family: Tahoma, Verdana, sans-serif;
+ font-size: 10px;
+
+ cursor: default;
+
+ -moz-user-select: none;
+ user-select: none;
+ }
+
+ .qx_ui_embed_Gallery .galleryCell img{
+ vertical-align: bottom;
+ display: block;
+ }
+
+ .qx_ui_embed_Gallery .galleryCell .galleryTitle,
+ .qx_ui_embed_Gallery .galleryCell .galleryComment{
+ background: #eee;
+ padding: 3px 6px;
+ text-align: center;
+ cursor: default;
+ overflow: hidden;
+ white-space: nowrap;
+ }
+
+ .qx_ui_embed_Gallery .galleryCell .galleryTitle{
+ border-bottom: 1px solid #aaa;
+ }
+
+ .qx_ui_embed_Gallery .galleryCell .galleryComment{
+ border-top: 1px solid #aaa;
+ }
+
+ .qx_ui_embed_Gallery .galleryCell-Selected{
+ background: #DCE8F6;
+ border: 1px solid #2760A1;
+ }
+
+ .qx_ui_embed_Gallery .galleryCell-Selected .galleryTitle,
+ .qx_ui_embed_Gallery .galleryCell-Selected .galleryComment{
+ background: #9BBFE7;
+ }
+
+ .qx_ui_embed_Gallery .galleryCell-Selected .galleryTitle{
+ border-bottom: 1px dotted #2760A1;
+ }
+
+ .qx_ui_embed_Gallery .galleryCell-Selected .galleryComment{
+ border-top: 1px dotted #2760A1;
+ }
+
+
+ /* customize */
+
+ .qx_ui_embed_Gallery{
+ background: #fff;
+ padding: 5px;
+ }
+
+ .qx_ui_embed_Gallery .galleryCell{
+ margin: 5px;
+ border: 1px solid #DCDFE8;
+ }
+
+ .qx_ui_embed_Gallery .galleryCell-Selected{
+ border: 1px solid #5E6474;
+ background: #DADDE4;
+ }
+ </style>
+
+ <script type="text/javascript">
+ var updateAdd;
+
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var galleryList = [];
+
+ for (var i=0; i<100; i++)
+ {
+ galleryList.push({
+ display : "bmzN9ci5",
+ width : 350,
+ height : 350,
+ thumbWidth : 64,
+ thumbHeight : 64,
+ title : "gohome" + i + ".png",
+ timestamp : Math.random().toString(),
+ comment : "Cool Comment: " + i,
+ id : "7686191121780974-10682-" + i,
+ src : qx.manager.object.AliasManager.getInstance().resolvePath("icon/64/apps/graphics-image-viewer.png")
+ });
+ };
+
+ var gallery = new qx.ui.embed.Gallery(galleryList);
+
+ gallery.setLeft(20);
+ gallery.setRight(335);
+ gallery.setTop(48);
+ gallery.setBottom(48);
+ gallery.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ gallery.setShowTitle(false);
+ gallery.setShowComment(false);
+ gallery.setDecorHeight(0);
+
+ qx.ui.core.ClientDocument.getInstance().add(gallery);
+
+
+
+ var toolTip = new qx.ui.popup.ToolTip("Photo Details", "icon/32/actions/format-color.png");
+ gallery.setToolTip(toolTip);
+
+ gallery.addEventListener("beforeToolTipAppear", function(e)
+ {
+ var vNode = e.getData();
+ var vEntry = this.getEntryByNode(vNode);
+
+ toolTip.getAtom().setLabel("<strong>" + vEntry.title + "</strong><br/>" + vEntry.comment);
+
+ this.setToolTip(toolTip);
+ });
+
+
+ updateAdd = function()
+ {
+ var galleryListUpdated = qx.lang.Array.copy(gallery.getList());
+
+ for (var i=galleryListUpdated.length, j=i+10; i<j; i++)
+ {
+ galleryListUpdated.push({
+ display : "bmzN9ci5",
+ width : 350,
+ height : 350,
+ thumbWidth : 64,
+ thumbHeight : 64,
+ title : "gohome" + i + ".png",
+ timestamp : Math.random().toString(),
+ comment : "Cool Comment: " + i,
+ id : "7686191121780974-10682-" + i,
+ src : qx.manager.object.AliasManager.getInstance().resolvePath("icon/64/actions/format-color.png")
+ });
+ };
+
+ gallery.addFromUpdatedList(galleryListUpdated);
+ };
+
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Generate_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Generate_1.html
new file mode 100644
index 0000000000..20d91f45ce
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Generate_1.html
@@ -0,0 +1,267 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>qx.ui.basic.Atom is the parent class for buttons, menu entries, icons, checkboxes. While you can do,
+ you usually don't have to instantiate qx.ui.basic.Atom directly.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.lang.Array.merge = function(firstArray, secondArray)
+ {
+ var combinedArray = [], currentValue, indexInSecond;
+
+ for (var i=0, l=firstArray.length; i<l; i++) {
+ (indexInSecond = secondArray.indexOf(currentValue = firstArray[i])) == -1 ? combinedArray.push(currentValue) : qx.lang.Array.append(combinedArray, secondArray.splice(0, indexInSecond+1));
+ };
+
+ return combinedArray.concat(secondArray);
+ };
+
+ var a = [ "before3Mnu", "fileMnu", "editMnu", "saveMnu", "exitMenu" ];
+ var b = [ "before1Mnu", "before2Mnu", "fileMnu", "fooMnu", "editMnu", "saveMnu", "after1Mnu" ];
+
+ //alert(qx.lang.Array.merge(a, b));
+
+ var comp1 =
+ {
+ bars :
+ [
+ {
+ id : "menubar",
+ groups : [ "mainMp", "helpMp" ]
+ },
+
+ {
+ id : "toolbar",
+ groups : [ "openTb", "editTb" ]
+ }
+ ],
+
+ groups :
+ {
+ // Menu Bar Parts
+ "mainMp" : { commands : [ "fileBtn", "editBtn", "viewBtn" ] },
+ "helpMp" : { commands : [ "helpBtn" ] },
+
+ // Tool Bar Parts
+ "openTb" : { commands : [ "openBtn", "openRecentlyBtn" ] },
+ "editTb" : { commands : [ "cutBtn", "copyBtn", "pasteBtn" ] },
+
+ // Menu Content
+ "openMn" : { commands : [ "openBtn", "openWithBtn", "openRecentlyBtn" ] },
+ "saveMn" : { commands : [ "saveBtn", "saveAsBtn" ] },
+ "closeMn" : { commands : [ "closeBtn" ] },
+ "exitMn" : { commands : [ "exitBtn" ] },
+ "undoMn" : { commands : [ "undoBtn", "redoBtn" ] },
+ "editMn" : { commands : [ "cutBtn", "copyBtn", "pasteBtn", "deleteBtn", "clipboardBtn" ] },
+ "searchMn" : { commands : [ "searchBtn", "replaceBtn", "continueSearchBtn" ] },
+
+ "barsMn" : { commands : [] },
+ "fontMn" : { commands : [] },
+
+ "aboutMn" : { commands : [ "aboutBtn" ] },
+ "recentDocsMn" : { commands : [ "doc1Btn", "doc2Btn", "doc3Btn" ] }
+ },
+
+ menus :
+ {
+ "fileMnu" : { groups : [ "openMn", "saveMn", "closeMn", "exitMn" ] },
+ "editMnu" : { groups : [ "undoMn", "editMn", "searchMn" ] },
+ "viewMnu" : { groups : [ "barsMn", "fontMn" ] },
+ "helpMnu" : { groups : [ "aboutMn" ] },
+ "openRecentlyMnu" : { groups : [ "recentDocsMn" ] }
+ },
+
+ commands :
+ {
+ // Menu-Buttons
+ "fileBtn" : { title : "Datei", menu : "fileMnu" },
+ "editBtn" : { title : "Bearbeiten", menu : "editMnu" },
+ "viewBtn" : { title : "Ansicht", menu : "viewMnu" },
+ "helpBtn" : { title : "Hilfe", menu : "helpMnu" },
+
+ // Execute-Buttons: Open
+ "openBtn" : { title : "Öffnen", execute : "open" },
+ "openWithBtn" : { title : "Öffnen mit...", execute : "openWith" },
+ "openRecentlyBtn" : { title : "Letzte öffnen...", menu : "openRecentlyMnu" },
+
+ "saveBtn" : { title : "Speichern", execute : "save" },
+ "saveAsBtn" : { title : "Speichern als...", execute : "saveAs" },
+ "closeBtn" : { title : "Schließen", execute : "close" },
+ "exitBtn" : { title : "Beenden", execute : "exit" },
+
+ "undoBtn" : { title : "Rückgängig", execute : "undo" },
+ "redoBtn" : { title : "Wiederherstellen", execute : "redo" },
+ "deleteBtn" : { title : "Löschen", execute : "delete" },
+ "clipboardBtn" : { title : "Zwischenablage", execute : "clipboard" },
+
+ // Execute-Buttons: Search
+ "searchBtn" : { title : "Suchen", execute : "search" },
+ "replaceBtn" : { title : "Ersetzen", execute : "replace" },
+ "continueSearchBtn" : { title : "Weitersuchen", execute : "continuesearch" },
+
+ // Execute-Buttons: Edit
+ "cutBtn" : { title : "Ausschneiden", execute : "cut" },
+ "copyBtn" : { title : "Kopieren", execute : "copy" },
+ "pasteBtn" : { title : "Einfügen", execute : "paste" },
+
+ // Execute-Buttons: Info
+ "aboutBtn" : { title : "Über", execute : "about" },
+
+ "doc1Btn" : { title : "Dokument 1", execute : "openDoc1" },
+ "doc2Btn" : { title : "Dokument 2", execute : "openDoc2" },
+ "doc3Btn" : { title : "Dokument 3", execute : "openDoc3" }
+ }
+ };
+
+ var comp2 =
+ {
+ };
+
+
+
+
+
+
+ qx.OO.defineClass("qx.Generator", qx.core.Target,
+ function(comp)
+ {
+ this._comp = comp;
+
+ });
+
+ qx.Proto._generateMenu = function(id)
+ {
+ var menu = new qx.ui.menu.Menu;
+
+ var menuData = this._comp.menus[id];
+
+ if (!menuData) {
+ alert("Missing menu: " + id);
+ };
+
+ for (var i=0; i<menuData.groups.length; i++)
+ {
+ var groupcontent = this._comp.groups[menuData.groups[i]];
+
+ if (!groupcontent) {
+ alert("Missing menu: " + menuData.groups[i]);
+ };
+
+ var groupcommandlist = groupcontent.commands;
+
+ for (var j=0; j<groupcommandlist.length; j++)
+ {
+ var commandData = this._comp.commands[groupcommandlist[j]];
+
+ if (!commandData) {
+ alert("Missing command: " + groupcommandlist[j]);
+ };
+
+ if (commandData.menu)
+ {
+ var subMenu = this._generateMenu(commandData.menu);
+ var menuButton = new qx.ui.menu.Button(commandData.title, null, null, subMenu);
+
+ subMenu.addToDocument();
+ }
+ else
+ {
+ var menuButton = new qx.ui.menu.Button(commandData.title);
+ };
+
+ menu.add(menuButton);
+ };
+
+ if (i < menuData.groups.length-1) {
+ menu.add(new qx.ui.menu.Separator);
+ };
+ };
+
+ return menu;
+ };
+
+ qx.Proto.getWidget = function()
+ {
+ var can = new qx.ui.layout.CanvasLayout;
+ can.auto();
+ can.setLocation(100, 100);
+ can.setBorder("2px solid red");
+
+ for (var i=0; i<this._comp.bars.length; i++)
+ {
+ var tb = new qx.ui.toolbar.ToolBar;
+ tb.setLocation(0, (i * 50));
+ tb.setRight(0);
+ can.add(tb);
+
+
+
+ var bardata = this._comp.bars[i];
+ var groupdata = bardata.groups;
+
+ for(var j=0; j<groupdata.length; j++)
+ {
+ var part = new qx.ui.toolbar.Part;
+
+ var groupcontent = this._comp.groups[groupdata[j]];
+ var groupcommandlist = groupcontent.commands;
+
+ if (!groupcommandlist)
+ {
+ alert("Missing commands in: " + groupcontent);
+ };
+
+ for (var k=0; k<groupcommandlist.length; k++)
+ {
+ var commanddata = this._comp.commands[groupcommandlist[k]];
+
+ if (commanddata)
+ {
+ if (typeof commanddata.menu != "undefined")
+ {
+ menu = this._generateMenu(commanddata.menu);
+ menu.addToDocument();
+
+ btn = new qx.ui.toolbar.MenuButton(commanddata.title, menu);
+ }
+ else
+ {
+ btn = new qx.ui.toolbar.Button(commanddata.title);
+ };
+
+ part.add(btn);
+ }
+ else
+ {
+ alert("Missing: " + groupcommandlist[k]);
+ };
+ };
+
+ tb.add(part);
+ };
+ };
+
+ return can;
+ };
+
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var c1 = new qx.Generator(comp1);
+ qx.ui.core.ClientDocument.getInstance().add(c1.getWidget());
+ });
+
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/GridLayout_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/GridLayout_1.html
new file mode 100644
index 0000000000..ff1a48575b
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/GridLayout_1.html
@@ -0,0 +1,79 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Test for qx.ui.layout.GridLayout.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var gl = new qx.ui.layout.GridLayout;
+
+ gl.setLocation(20, 48);
+ gl.setDimension(462, 128);
+ gl.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ gl.setPadding(2, 4);
+ gl.setColumnCount(4);
+ gl.setRowCount(2);
+
+ gl.setColumnWidth(0, 100);
+ gl.setColumnWidth(1, 200);
+ gl.setColumnWidth(2, 50);
+ gl.setColumnWidth(3, 100);
+
+ gl.setRowHeight(0, 40);
+ gl.setRowHeight(1, 80);
+
+ qx.ui.core.ClientDocument.getInstance().add(gl);
+
+
+
+
+
+ var term1 = new qx.ui.basic.Terminator;
+ term1.setBackgroundColor("yellow");
+ gl.add(term1, 0, 0);
+
+ var term2 = new qx.ui.basic.Terminator;
+ term2.setBackgroundColor("red");
+ gl.add(term2, 1, 0);
+
+ var term3 = new qx.ui.basic.Terminator;
+ term3.setBackgroundColor("green");
+ gl.add(term3, 2, 0);
+
+ var term4 = new qx.ui.basic.Terminator;
+ term4.setBackgroundColor("blue");
+ gl.add(term4, 3, 0);
+
+ var term5 = new qx.ui.basic.Terminator;
+ term5.setBackgroundColor("fuchsia");
+ gl.add(term5, 0, 1);
+
+ var term6 = new qx.ui.basic.Terminator;
+ term6.setBackgroundColor("olive");
+ gl.add(term6, 1, 1);
+
+ var term7 = new qx.ui.basic.Terminator;
+ term7.setBackgroundColor("maroon");
+ gl.add(term7, 2, 1);
+
+ var term8 = new qx.ui.basic.Terminator;
+ term8.setBackgroundColor("navy");
+ gl.add(term8, 3, 1);
+ });
+ </script>
+
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/GridLayout_10.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/GridLayout_10.html
new file mode 100644
index 0000000000..5ed1972427
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/GridLayout_10.html
@@ -0,0 +1,94 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Layout Manager: qx.ui.layout.GridLayout. Example image borrowed from <a href="http://winfx.msdn.microsoft.com/library/en-us/wcp_conceptual/winfx/layout/overviews/grid_ovw.asp">Microsoft's XAML Documentation</a>.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var img = new qx.ui.basic.Image("./image/grid_dialog_box.png");
+
+ img.setLocation(20, 48);
+
+ var gl = new qx.ui.layout.GridLayout;
+
+ gl.setLocation(46, 300);
+ gl.auto();
+ gl.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ gl.setPadding(4);
+
+ gl.setRowCount(4);
+ gl.setColumnCount(5);
+
+ gl.setHorizontalSpacing(4);
+ gl.setVerticalSpacing(4);
+
+ gl.setColumnWidth(0, 40);
+ gl.setColumnWidth(1, 35);
+ gl.setColumnWidth(2, 75);
+ gl.setColumnWidth(3, 75);
+ gl.setColumnWidth(4, 75);
+
+ gl.setRowHeight(0, 30);
+ gl.setRowHeight(1, 30);
+ gl.setRowHeight(2, 15);
+ gl.setRowHeight(3, 25);
+
+ gl.mergeCells(1, 0, 4, 1);
+ gl.mergeCells(1, 1, 4, 1);
+
+ gl.setRowVerticalAlignment(1, "middle");
+
+ qx.ui.core.ClientDocument.getInstance().add(img, gl);
+
+
+
+
+
+ var i1 = new qx.ui.basic.Image("icon/32/apps/preferences-desktop-wallpaper.png");
+ gl.add(i1, 0, 0);
+
+ var t1 = new qx.ui.basic.Label("Open:");
+ t1.setMnemonic("O");
+ t1.setSelectable(false);
+ gl.add(t1, 0, 1);
+
+ var b1 = new qx.ui.form.Button("OK");
+ b1.setAllowStretchX(true);
+ gl.add(b1, 2, 3);
+
+ var b2 = new qx.ui.form.Button("Cancel");
+ b2.setAllowStretchX(true);
+ gl.add(b2, 3, 3);
+
+ var b3 = new qx.ui.form.Button("Browse...");
+ b3.setAllowStretchX(true);
+ b3.getLabelObject().setMnemonic("B");
+ gl.add(b3, 4, 3);
+
+ var t2 = new qx.ui.basic.Label("Type in the name of a program, folder, document or<br/> Internet Resource and Windows will open it for you.");
+ t2.setSelectable(false);
+ gl.add(t2, 1, 0);
+
+ var c1 = new qx.ui.form.ComboBox();
+ c1.setEditable(true);
+ c1.setValue("d:\\local\\pictures");
+ c1.setWidth(null);
+ gl.add(c1, 1, 1);
+ });
+ </script>
+
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/GridLayout_11.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/GridLayout_11.html
new file mode 100644
index 0000000000..83a08a64e1
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/GridLayout_11.html
@@ -0,0 +1,124 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Layout Manager: qx.ui.layout.GridLayout. Example image borrowed from <a href="http://winfx.msdn.microsoft.com/library/en-us/wcp_conceptual/winfx/layout/overviews/grid_ovw.asp">Microsoft's XAML Documentation</a>.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var img = new qx.ui.basic.Image("./image/grid_dialog_box.png");
+
+ img.setLocation(20, 48);
+
+ var gl = new qx.ui.layout.GridLayout;
+
+ gl.setLocation(46, 300);
+ gl.auto();
+ gl.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ gl.setPadding(4);
+
+ gl.setRowCount(4);
+ gl.setColumnCount(5);
+
+ gl.setHorizontalSpacing(4);
+ gl.setVerticalSpacing(4);
+
+ gl.setColumnWidth(0, 40);
+ gl.setColumnWidth(1, 35);
+ gl.setColumnWidth(2, 75);
+ gl.setColumnWidth(3, 75);
+ gl.setColumnWidth(4, 75);
+
+ gl.setRowHeight(0, 30);
+ gl.setRowHeight(1, 30);
+ gl.setRowHeight(2, 15);
+ gl.setRowHeight(3, 25);
+
+ gl.mergeCells(1, 0, 4, 1);
+ gl.mergeCells(1, 1, 4, 1);
+
+ gl.setRowVerticalAlignment(1, "middle");
+
+ qx.ui.core.ClientDocument.getInstance().add(img, gl);
+
+
+
+
+
+ var i1 = new qx.ui.basic.Image("icon/32/apps/preferences-desktop-wallpaper.png");
+ gl.add(i1, 0, 0);
+
+ var t1 = new qx.ui.basic.Label("Open:");
+ t1.setMnemonic("O");
+ t1.setSelectable(false);
+ gl.add(t1, 0, 1);
+
+ var b1 = new qx.ui.form.Button("OK");
+ b1.setAllowStretchX(true);
+ gl.add(b1, 2, 3);
+
+ var b2 = new qx.ui.form.Button("Cancel");
+ b2.setAllowStretchX(true);
+ gl.add(b2, 3, 3);
+
+ var b3 = new qx.ui.form.Button("Browse...");
+ b3.setAllowStretchX(true);
+ b3.getLabelObject().setMnemonic("B");
+ gl.add(b3, 4, 3);
+
+ var t2 = new qx.ui.basic.Label("Type in the name of a program, folder, document or Internet Resource and Windows will open it for you.");
+ t2.setSelectable(false);
+ t2.setStyleProperty("whiteSpace", "normal");
+ gl.add(t2, 1, 0);
+
+ var c1 = new qx.ui.form.ComboBox();
+ c1.setEditable(true);
+ c1.setValue("d:\\local\\pictures");
+ c1.setWidth(null);
+ gl.add(c1, 1, 1);
+
+
+
+
+
+
+
+
+
+ var c1 = new qx.ui.form.Button("Make bigger");
+ var c2 = new qx.ui.form.Button("Make smaller");
+
+ c1.setLocation(500, 300);
+ c2.setLocation(500, 330);
+
+ qx.ui.core.ClientDocument.getInstance().add(c1, c2);
+
+ c1.addEventListener("execute", function(e) {
+ gl.setColumnWidth(2, 100);
+ gl.setColumnWidth(3, 100);
+ gl.setColumnWidth(4, 100);
+ });
+
+ c2.addEventListener("execute", function(e) {
+ gl.setColumnWidth(2, 75);
+ gl.setColumnWidth(3, 75);
+ gl.setColumnWidth(4, 75);
+ });
+
+ });
+ </script>
+
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/GridLayout_2.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/GridLayout_2.html
new file mode 100644
index 0000000000..90a629e7d4
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/GridLayout_2.html
@@ -0,0 +1,88 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Test for qx.ui.layout.GridLayout.</p>
+ <p>Added some own sizes and use more complex children.</p>
+ <p>The olive child has a width of 50% (which is related to the cell size here) and a horizontal alignment 'center'.</p>
+ <p>The navi child has a height of 20 pixel and is aligned to the bottom of the cell.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var gl = new qx.ui.layout.GridLayout;
+
+ gl.setLocation(20, 48);
+ gl.setDimension(462, 128);
+ gl.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ gl.setPadding(2, 4);
+ gl.setColumnCount(4);
+ gl.setRowCount(2);
+
+ gl.setColumnWidth(0, 100);
+ gl.setColumnWidth(1, 200);
+ gl.setColumnWidth(2, 50);
+ gl.setColumnWidth(3, 100);
+
+ gl.setRowHeight(0, 40);
+ gl.setRowHeight(1, 80);
+
+ qx.ui.core.ClientDocument.getInstance().add(gl);
+
+
+
+
+
+ var term1 = new qx.ui.basic.Terminator;
+ term1.setBackgroundColor("yellow");
+ gl.add(term1, 0, 0);
+
+ var term2 = new qx.ui.form.Button("Hello World", "icon/22/actions/format-color.png");
+ gl.add(term2, 1, 0);
+
+ var term3 = new qx.ui.basic.Terminator;
+ term3.setBackgroundColor("green");
+ term3.setWidth(100);
+ term3.setHeight(100);
+ term3.setBorder("1px solid black");
+ gl.add(term3, 2, 0);
+
+ var term4 = new qx.ui.basic.Terminator;
+ term4.setBackgroundColor("blue");
+ gl.add(term4, 3, 0);
+
+ var term5 = new qx.ui.basic.Terminator;
+ term5.setBackgroundColor("fuchsia");
+ gl.add(term5, 0, 1);
+
+ var term6 = new qx.ui.basic.Terminator;
+ term6.setBackgroundColor("olive");
+ term6.setWidth("50%");
+ term6.setHorizontalAlign("center");
+ gl.add(term6, 1, 1);
+
+ var term7 = new qx.ui.basic.Terminator;
+ term7.setBackgroundColor("maroon");
+ gl.add(term7, 2, 1);
+
+ var term8 = new qx.ui.basic.Terminator;
+ term8.setBackgroundColor("navy");
+ term8.setHeight(20);
+ term8.setVerticalAlign("bottom");
+ gl.add(term8, 3, 1);
+ });
+ </script>
+
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/GridLayout_3.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/GridLayout_3.html
new file mode 100644
index 0000000000..4df290606b
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/GridLayout_3.html
@@ -0,0 +1,82 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Test for qx.ui.layout.GridLayout.</p>
+ <p>Using auto dimensions for the grid.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var gl = new qx.ui.layout.GridLayout;
+
+ gl.setLocation(20, 48);
+ gl.setDimension("auto", "auto");
+ gl.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ gl.setPadding(2, 4);
+ gl.setColumnCount(4);
+ gl.setRowCount(2);
+ gl.setHorizontalSpacing(4);
+ gl.setVerticalSpacing(8);
+
+ gl.setColumnWidth(0, 100);
+ gl.setColumnWidth(1, 200);
+ gl.setColumnWidth(2, 50);
+ gl.setColumnWidth(3, 100);
+
+ gl.setRowHeight(0, 40);
+ gl.setRowHeight(1, 80);
+
+ qx.ui.core.ClientDocument.getInstance().add(gl);
+
+
+
+
+
+ var term1 = new qx.ui.basic.Terminator;
+ term1.setBackgroundColor("yellow");
+ gl.add(term1, 0, 0);
+
+ var term2 = new qx.ui.basic.Terminator;
+ term2.setBackgroundColor("red");
+ gl.add(term2, 1, 0);
+
+ var term3 = new qx.ui.basic.Terminator;
+ term3.setBackgroundColor("green");
+ gl.add(term3, 2, 0);
+
+ var term4 = new qx.ui.basic.Terminator;
+ term4.setBackgroundColor("blue");
+ gl.add(term4, 3, 0);
+
+ var term5 = new qx.ui.basic.Terminator;
+ term5.setBackgroundColor("fuchsia");
+ gl.add(term5, 0, 1);
+
+ var term6 = new qx.ui.basic.Terminator;
+ term6.setBackgroundColor("olive");
+ gl.add(term6, 1, 1);
+
+ var term7 = new qx.ui.basic.Terminator;
+ term7.setBackgroundColor("maroon");
+ gl.add(term7, 2, 1);
+
+ var term8 = new qx.ui.basic.Terminator;
+ term8.setBackgroundColor("navy");
+ gl.add(term8, 3, 1);
+ });
+ </script>
+
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/GridLayout_4.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/GridLayout_4.html
new file mode 100644
index 0000000000..79503521f4
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/GridLayout_4.html
@@ -0,0 +1,81 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Test for qx.ui.layout.GridLayout.</p>
+ <p>Using percents for children.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var gl = new qx.ui.layout.GridLayout;
+
+ gl.setLocation(20, 48);
+ gl.setRight(335);
+ gl.setBottom(48);
+ gl.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ gl.setPadding(2, 4);
+ gl.setColumnCount(4);
+ gl.setRowCount(2);
+
+ gl.setColumnWidth(0, "10%");
+ gl.setColumnWidth(1, "40%");
+ gl.setColumnWidth(2, "30%");
+ gl.setColumnWidth(3, "20%");
+
+ gl.setRowHeight(0, "70%");
+ gl.setRowHeight(1, "30%");
+
+ qx.ui.core.ClientDocument.getInstance().add(gl);
+
+
+
+
+
+ var term1 = new qx.ui.basic.Terminator;
+ term1.setBackgroundColor("yellow");
+ gl.add(term1, 0, 0);
+
+ var term2 = new qx.ui.basic.Terminator;
+ term2.setBackgroundColor("red");
+ gl.add(term2, 1, 0);
+
+ var term3 = new qx.ui.basic.Terminator;
+ term3.setBackgroundColor("green");
+ gl.add(term3, 2, 0);
+
+ var term4 = new qx.ui.basic.Terminator;
+ term4.setBackgroundColor("blue");
+ gl.add(term4, 3, 0);
+
+ var term5 = new qx.ui.basic.Terminator;
+ term5.setBackgroundColor("fuchsia");
+ gl.add(term5, 0, 1);
+
+ var term6 = new qx.ui.basic.Terminator;
+ term6.setBackgroundColor("olive");
+ gl.add(term6, 1, 1);
+
+ var term7 = new qx.ui.basic.Terminator;
+ term7.setBackgroundColor("maroon");
+ gl.add(term7, 2, 1);
+
+ var term8 = new qx.ui.basic.Terminator;
+ term8.setBackgroundColor("navy");
+ gl.add(term8, 3, 1);
+ });
+ </script>
+
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/GridLayout_5.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/GridLayout_5.html
new file mode 100644
index 0000000000..68d37b9947
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/GridLayout_5.html
@@ -0,0 +1,85 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>A simple form using qx.ui.layout.GridLayout</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var gl = new qx.ui.layout.GridLayout;
+
+ gl.setLocation(20, 48);
+ gl.setDimension("auto", "auto");
+ gl.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ gl.setPadding(8);
+ gl.setColumnCount(2);
+ gl.setRowCount(7);
+ gl.setVerticalSpacing(4);
+ gl.setHorizontalSpacing(6);
+
+ gl.setColumnWidth(0, 70);
+ gl.setColumnWidth(1, 180);
+
+ gl.setColumnHorizontalAlignment(0, "right");
+ gl.setColumnVerticalAlignment(0, "middle");
+
+ gl.setRowHeight(0, 20);
+ gl.setRowHeight(1, 20);
+ gl.setRowHeight(2, 20);
+ gl.setRowHeight(3, 20);
+ gl.setRowHeight(4, 20);
+ gl.setRowHeight(5, 70);
+ gl.setRowHeight(6, 20);
+
+ qx.ui.core.ClientDocument.getInstance().add(gl);
+
+ var label1 = new qx.ui.basic.Label("Given Name");
+ var label2 = new qx.ui.basic.Label("Name");
+ var label3 = new qx.ui.basic.Label("City");
+ var label4 = new qx.ui.basic.Label("Country");
+ var label5 = new qx.ui.basic.Label("E-Mail");
+ var label6 = new qx.ui.basic.Label("Comment");
+ label6.setVerticalAlign("top");
+
+ label6.setVerticalAlign("top");
+
+ var input1 = new qx.ui.form.TextField;
+ var input2 = new qx.ui.form.TextField;
+ var input3 = new qx.ui.form.TextField;
+ var input4 = new qx.ui.form.TextField;
+ var input5 = new qx.ui.form.TextField;
+ var input6 = new qx.ui.form.TextArea;
+ var input7 = new qx.ui.form.Button("Submit", "icon/16/actions/dialog-ok.png");
+
+ input7.setHorizontalAlign("right");
+
+ gl.add(label1, 0, 0);
+ gl.add(input1, 1, 0);
+ gl.add(label2, 0, 1);
+ gl.add(input2, 1, 1);
+ gl.add(label3, 0, 2);
+ gl.add(input3, 1, 2);
+ gl.add(label4, 0, 3);
+ gl.add(input4, 1, 3);
+ gl.add(label5, 0, 4);
+ gl.add(input5, 1, 4);
+ gl.add(label6, 0, 5);
+ gl.add(input6, 1, 5);
+ gl.add(input7, 1, 6);
+ });
+ </script>
+
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/GridLayout_6.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/GridLayout_6.html
new file mode 100644
index 0000000000..786cd9927a
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/GridLayout_6.html
@@ -0,0 +1,109 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>A simple form using qx.ui.layout.GridLayout</p>
+ <p>Using padding instead of spacing. Spacing is between the cells, padding is inside the cells. The same layout using padding is always bigger because the first and last cells are also affected with the padding to the edge.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var gl = new qx.ui.layout.GridLayout;
+
+ gl.setLocation(20, 48);
+ gl.setDimension("auto", "auto");
+ gl.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ gl.setPadding(8);
+ gl.setColumnCount(2);
+ gl.setRowCount(7);
+
+ gl.setColumnWidth(0, 76);
+ gl.setColumnWidth(1, 186);
+
+ gl.setColumnHorizontalAlignment(0, "right");
+ gl.setColumnVerticalAlignment(0, "middle");
+
+ gl.setRowHeight(0, 24);
+ gl.setRowHeight(1, 24);
+ gl.setRowHeight(2, 24);
+ gl.setRowHeight(3, 24);
+ gl.setRowHeight(4, 24);
+ gl.setRowHeight(5, 74);
+ gl.setRowHeight(6, 24);
+
+ gl.setCellPaddingTop(2);
+ gl.setCellPaddingRight(3);
+ gl.setCellPaddingBottom(2);
+ gl.setCellPaddingLeft(3);
+
+ /*
+
+ // the same like the above, but more local
+ gl.setColumnPaddingTop(0, 2);
+ gl.setColumnPaddingRight(0, 3);
+ gl.setColumnPaddingBottom(0, 2);
+ gl.setColumnPaddingLeft(0, 3);
+
+ gl.setColumnPaddingTop(1, 2);
+ gl.setColumnPaddingRight(1, 3);
+ gl.setColumnPaddingBottom(1, 2);
+ gl.setColumnPaddingLeft(1, 3);
+
+ */
+
+ qx.ui.core.ClientDocument.getInstance().add(gl);
+
+ var label1 = new qx.ui.basic.Label("Given Name");
+ var label2 = new qx.ui.basic.Label("Name");
+ var label3 = new qx.ui.basic.Label("City");
+ var label4 = new qx.ui.basic.Label("Country");
+ var label5 = new qx.ui.basic.Label("E-Mail");
+ var label6 = new qx.ui.basic.Label("Comment");
+
+ label6.setVerticalAlign("top");
+
+ var input1 = new qx.ui.form.TextField;
+ var input2 = new qx.ui.form.TextField;
+ var input3 = new qx.ui.form.ComboBox;
+ var input4 = new qx.ui.form.TextField;
+ var input5 = new qx.ui.form.TextField;
+ var input6 = new qx.ui.form.TextArea;
+ var input7 = new qx.ui.form.Button("Submit", "icon/16/actions/dialog-ok.png");
+
+ input3.add(new qx.ui.form.ListItem("New York"));
+ input3.add(new qx.ui.form.ListItem("Paris"));
+ input3.add(new qx.ui.form.ListItem("Sydney"));
+ input3.add(new qx.ui.form.ListItem("Berlin"));
+ input3.add(new qx.ui.form.ListItem("Washington"));
+
+ input7.setHorizontalAlign("right");
+
+ gl.add(label1, 0, 0);
+ gl.add(input1, 1, 0);
+ gl.add(label2, 0, 1);
+ gl.add(input2, 1, 1);
+ gl.add(label3, 0, 2);
+ gl.add(input3, 1, 2);
+ gl.add(label4, 0, 3);
+ gl.add(input4, 1, 3);
+ gl.add(label5, 0, 4);
+ gl.add(input5, 1, 4);
+ gl.add(label6, 0, 5);
+ gl.add(input6, 1, 5);
+ gl.add(input7, 1, 6);
+ });
+ </script>
+
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/GridLayout_7.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/GridLayout_7.html
new file mode 100644
index 0000000000..1b3b108afb
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/GridLayout_7.html
@@ -0,0 +1,112 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Test for qx.ui.layout.GridLayout. Now with cells which are merged with others.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var gl = new qx.ui.layout.GridLayout;
+
+ gl.setLocation(20, 48);
+ gl.setDimension(462, 128);
+ gl.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ gl.setPadding(2, 4);
+ gl.setColumnCount(4);
+ gl.setRowCount(2);
+
+ gl.setColumnWidth(0, 100);
+ gl.setColumnWidth(1, 200);
+ gl.setColumnWidth(2, 50);
+ gl.setColumnWidth(3, 100);
+
+ gl.setRowHeight(0, 40);
+ gl.setRowHeight(1, 80);
+
+ qx.ui.core.ClientDocument.getInstance().add(gl);
+
+ // start-col, start-row, col-length, row-length
+ gl.debug("Merge: 1, 1, 2, 1");
+ gl.mergeCells(1, 1, 2, 1);
+
+ gl.debug("Span-Start (0, 1): " + gl.isSpanStart(0, 1));
+ gl.debug("Span-Start (0, 2): " + gl.isSpanStart(0, 2));
+ gl.debug("Span-Start (1, 1): " + gl.isSpanStart(1, 1));
+ gl.debug("Span-Start (1, 2): " + gl.isSpanStart(1, 2));
+ gl.debug("Span-Start (2, 1): " + gl.isSpanStart(2, 1));
+ gl.debug("Span-Start (2, 2): " + gl.isSpanStart(2, 2));
+ gl.debug("Span-Start (3, 1): " + gl.isSpanStart(3, 1));
+ gl.debug("Span-Start (3, 2): " + gl.isSpanStart(3, 2));
+
+ gl.debug("Span-Cell (0, 1): " + gl.isSpanCell(0, 1));
+ gl.debug("Span-Cell (0, 2): " + gl.isSpanCell(0, 2));
+ gl.debug("Span-Cell (1, 1): " + gl.isSpanCell(1, 1));
+ gl.debug("Span-Cell (1, 2): " + gl.isSpanCell(1, 2));
+ gl.debug("Span-Cell (2, 1): " + gl.isSpanCell(2, 1));
+ gl.debug("Span-Cell (2, 2): " + gl.isSpanCell(2, 2));
+ gl.debug("Span-Cell (3, 1): " + gl.isSpanCell(3, 1));
+ gl.debug("Span-Cell (3, 2): " + gl.isSpanCell(3, 2));
+
+ gl.debug("Fill-Cell (0, 1): " + gl.isFillCell(0, 1));
+ gl.debug("Fill-Cell (0, 2): " + gl.isFillCell(0, 2));
+ gl.debug("Fill-Cell (1, 1): " + gl.isFillCell(1, 1));
+ gl.debug("Fill-Cell (1, 2): " + gl.isFillCell(1, 2));
+ gl.debug("Fill-Cell (2, 1): " + gl.isFillCell(2, 1));
+ gl.debug("Fill-Cell (2, 2): " + gl.isFillCell(2, 2));
+ gl.debug("Fill-Cell (3, 1): " + gl.isFillCell(3, 1));
+ gl.debug("Fill-Cell (3, 2): " + gl.isFillCell(3, 2));
+
+ /*
+ // both should be impossible
+ gl.debug("Merge 1, 1, 2, 1");
+ gl.mergeCells(1, 1, 2, 1);
+
+ gl.debug("Merge 0, 0, 3, 4");
+ gl.mergeCells(0, 0, 3, 4);
+ */
+
+ gl.debug("Merge 0, 0, 1, 2");
+ gl.mergeCells(0, 0, 1, 2);
+
+ gl.debug("Merge 2, 0, 2, 1");
+ gl.mergeCells(2, 0, 2, 1);
+
+
+
+
+ var term1 = new qx.ui.basic.Terminator;
+ term1.setBackgroundColor("yellow");
+ gl.add(term1, 0, 0);
+
+ var term2 = new qx.ui.basic.Terminator;
+ term2.setBackgroundColor("red");
+ gl.add(term2, 1, 0);
+
+ var term3 = new qx.ui.basic.Terminator;
+ term3.setBackgroundColor("green");
+ gl.add(term3, 2, 0);
+
+ var term6 = new qx.ui.basic.Terminator;
+ term6.setBackgroundColor("olive");
+ gl.add(term6, 1, 1);
+
+ var term8 = new qx.ui.basic.Terminator;
+ term8.setBackgroundColor("navy");
+ gl.add(term8, 3, 1);
+ });
+ </script>
+
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/GridLayout_8.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/GridLayout_8.html
new file mode 100644
index 0000000000..24a0ae9f4b
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/GridLayout_8.html
@@ -0,0 +1,115 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Test for qx.ui.layout.GridLayout. Now with cells which are merged with others.</p>
+ <p>Added spacing in combination with spans.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var gl = new qx.ui.layout.GridLayout;
+
+ gl.setLocation(20, 48);
+ gl.setDimension("auto", "auto");
+ gl.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ gl.setPadding(2, 4);
+ gl.setColumnCount(4);
+ gl.setRowCount(2);
+ gl.setHorizontalSpacing(10);
+ gl.setVerticalSpacing(10);
+
+ gl.setColumnWidth(0, 100);
+ gl.setColumnWidth(1, 200);
+ gl.setColumnWidth(2, 50);
+ gl.setColumnWidth(3, 100);
+
+ gl.setRowHeight(0, 40);
+ gl.setRowHeight(1, 80);
+
+ qx.ui.core.ClientDocument.getInstance().add(gl);
+
+ // start-col, start-row, col-length, row-length
+ gl.debug("Merge: 1, 1, 2, 1");
+ gl.mergeCells(1, 1, 2, 1);
+
+ gl.debug("Span-Start (0, 1): " + gl.isSpanStart(0, 1));
+ gl.debug("Span-Start (0, 2): " + gl.isSpanStart(0, 2));
+ gl.debug("Span-Start (1, 1): " + gl.isSpanStart(1, 1));
+ gl.debug("Span-Start (1, 2): " + gl.isSpanStart(1, 2));
+ gl.debug("Span-Start (2, 1): " + gl.isSpanStart(2, 1));
+ gl.debug("Span-Start (2, 2): " + gl.isSpanStart(2, 2));
+ gl.debug("Span-Start (3, 1): " + gl.isSpanStart(3, 1));
+ gl.debug("Span-Start (3, 2): " + gl.isSpanStart(3, 2));
+
+ gl.debug("Span-Cell (0, 1): " + gl.isSpanCell(0, 1));
+ gl.debug("Span-Cell (0, 2): " + gl.isSpanCell(0, 2));
+ gl.debug("Span-Cell (1, 1): " + gl.isSpanCell(1, 1));
+ gl.debug("Span-Cell (1, 2): " + gl.isSpanCell(1, 2));
+ gl.debug("Span-Cell (2, 1): " + gl.isSpanCell(2, 1));
+ gl.debug("Span-Cell (2, 2): " + gl.isSpanCell(2, 2));
+ gl.debug("Span-Cell (3, 1): " + gl.isSpanCell(3, 1));
+ gl.debug("Span-Cell (3, 2): " + gl.isSpanCell(3, 2));
+
+ gl.debug("Fill-Cell (0, 1): " + gl.isFillCell(0, 1));
+ gl.debug("Fill-Cell (0, 2): " + gl.isFillCell(0, 2));
+ gl.debug("Fill-Cell (1, 1): " + gl.isFillCell(1, 1));
+ gl.debug("Fill-Cell (1, 2): " + gl.isFillCell(1, 2));
+ gl.debug("Fill-Cell (2, 1): " + gl.isFillCell(2, 1));
+ gl.debug("Fill-Cell (2, 2): " + gl.isFillCell(2, 2));
+ gl.debug("Fill-Cell (3, 1): " + gl.isFillCell(3, 1));
+ gl.debug("Fill-Cell (3, 2): " + gl.isFillCell(3, 2));
+
+ /*
+ // both should be impossible
+ gl.debug("Merge 1, 1, 2, 1");
+ gl.mergeCells(1, 1, 2, 1);
+
+ gl.debug("Merge 0, 0, 3, 4");
+ gl.mergeCells(0, 0, 3, 4);
+ */
+
+ gl.debug("Merge 0, 0, 1, 2");
+ gl.mergeCells(0, 0, 1, 2);
+
+ gl.debug("Merge 2, 0, 2, 1");
+ gl.mergeCells(2, 0, 2, 1);
+
+
+
+
+ var term1 = new qx.ui.basic.Terminator;
+ term1.setBackgroundColor("yellow");
+ gl.add(term1, 0, 0);
+
+ var term2 = new qx.ui.basic.Terminator;
+ term2.setBackgroundColor("red");
+ gl.add(term2, 1, 0);
+
+ var term3 = new qx.ui.basic.Terminator;
+ term3.setBackgroundColor("green");
+ gl.add(term3, 2, 0);
+
+ var term6 = new qx.ui.basic.Terminator;
+ term6.setBackgroundColor("olive");
+ gl.add(term6, 1, 1);
+
+ var term8 = new qx.ui.basic.Terminator;
+ term8.setBackgroundColor("navy");
+ gl.add(term8, 3, 1);
+ });
+ </script>
+
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/GridLayout_9.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/GridLayout_9.html
new file mode 100644
index 0000000000..a37d5a0048
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/GridLayout_9.html
@@ -0,0 +1,120 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Test for qx.ui.layout.GridLayout. Now with cells which are merged with others.</p>
+ <p>Added spacing in combination with spans.</p>
+ <p>Added padding in combination with spans.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var gl = new qx.ui.layout.GridLayout;
+
+ gl.setLocation(20, 48);
+ gl.setDimension("auto", "auto");
+ gl.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ gl.setPadding(2, 4);
+ gl.setColumnCount(4);
+ gl.setRowCount(2);
+ gl.setHorizontalSpacing(10);
+ gl.setVerticalSpacing(10);
+ gl.setCellPaddingTop(4);
+ gl.setCellPaddingRight(4);
+ gl.setCellPaddingBottom(4);
+ gl.setCellPaddingLeft(4);
+
+ gl.setColumnWidth(0, 100);
+ gl.setColumnWidth(1, 200);
+ gl.setColumnWidth(2, 50);
+ gl.setColumnWidth(3, 100);
+
+ gl.setRowHeight(0, 40);
+ gl.setRowHeight(1, 80);
+
+ qx.ui.core.ClientDocument.getInstance().add(gl);
+
+ // start-col, start-row, col-length, row-length
+ gl.debug("Merge: 1, 1, 2, 1");
+ gl.mergeCells(1, 1, 2, 1);
+
+ gl.debug("Span-Start (0, 1): " + gl.isSpanStart(0, 1));
+ gl.debug("Span-Start (0, 2): " + gl.isSpanStart(0, 2));
+ gl.debug("Span-Start (1, 1): " + gl.isSpanStart(1, 1));
+ gl.debug("Span-Start (1, 2): " + gl.isSpanStart(1, 2));
+ gl.debug("Span-Start (2, 1): " + gl.isSpanStart(2, 1));
+ gl.debug("Span-Start (2, 2): " + gl.isSpanStart(2, 2));
+ gl.debug("Span-Start (3, 1): " + gl.isSpanStart(3, 1));
+ gl.debug("Span-Start (3, 2): " + gl.isSpanStart(3, 2));
+
+ gl.debug("Span-Cell (0, 1): " + gl.isSpanCell(0, 1));
+ gl.debug("Span-Cell (0, 2): " + gl.isSpanCell(0, 2));
+ gl.debug("Span-Cell (1, 1): " + gl.isSpanCell(1, 1));
+ gl.debug("Span-Cell (1, 2): " + gl.isSpanCell(1, 2));
+ gl.debug("Span-Cell (2, 1): " + gl.isSpanCell(2, 1));
+ gl.debug("Span-Cell (2, 2): " + gl.isSpanCell(2, 2));
+ gl.debug("Span-Cell (3, 1): " + gl.isSpanCell(3, 1));
+ gl.debug("Span-Cell (3, 2): " + gl.isSpanCell(3, 2));
+
+ gl.debug("Fill-Cell (0, 1): " + gl.isFillCell(0, 1));
+ gl.debug("Fill-Cell (0, 2): " + gl.isFillCell(0, 2));
+ gl.debug("Fill-Cell (1, 1): " + gl.isFillCell(1, 1));
+ gl.debug("Fill-Cell (1, 2): " + gl.isFillCell(1, 2));
+ gl.debug("Fill-Cell (2, 1): " + gl.isFillCell(2, 1));
+ gl.debug("Fill-Cell (2, 2): " + gl.isFillCell(2, 2));
+ gl.debug("Fill-Cell (3, 1): " + gl.isFillCell(3, 1));
+ gl.debug("Fill-Cell (3, 2): " + gl.isFillCell(3, 2));
+
+ /*
+ // both should be impossible
+ gl.debug("Merge 1, 1, 2, 1");
+ gl.mergeCells(1, 1, 2, 1);
+
+ gl.debug("Merge 0, 0, 3, 4");
+ gl.mergeCells(0, 0, 3, 4);
+ */
+
+ gl.debug("Merge 0, 0, 1, 2");
+ gl.mergeCells(0, 0, 1, 2);
+
+ gl.debug("Merge 2, 0, 2, 1");
+ gl.mergeCells(2, 0, 2, 1);
+
+
+
+
+ var term1 = new qx.ui.basic.Terminator;
+ term1.setBackgroundColor("yellow");
+ gl.add(term1, 0, 0);
+
+ var term2 = new qx.ui.basic.Terminator;
+ term2.setBackgroundColor("red");
+ gl.add(term2, 1, 0);
+
+ var term3 = new qx.ui.basic.Terminator;
+ term3.setBackgroundColor("green");
+ gl.add(term3, 2, 0);
+
+ var term6 = new qx.ui.basic.Terminator;
+ term6.setBackgroundColor("olive");
+ gl.add(term6, 1, 1);
+
+ var term8 = new qx.ui.basic.Terminator;
+ term8.setBackgroundColor("navy");
+ gl.add(term8, 3, 1);
+ });
+ </script>
+
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/History_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/History_1.html
new file mode 100644
index 0000000000..3c137ad131
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/History_1.html
@@ -0,0 +1,84 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Test the back button functionality of qooxdoo.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ function callback(e) {
+ d.debug(e.getData());
+ a1.setLabel("History event: " + e.getData());
+ }
+
+ var history = qx.client.History.getInstance();
+
+ history.init();
+ history.addEventListener("request", callback);
+
+ qx.client.Timer.once(function() {
+ history.addToHistory("Juhu1", "Juhu1");
+ }, this, 300);
+
+ qx.client.Timer.once(function() {
+ history.addToHistory("Juhu2", "Juhu2");
+ }, this, 600);
+
+ qx.client.Timer.once(function() {
+ history.addToHistory("Juhu3", "Juhu3");
+ }, this, 900);
+
+ var t1 = new qx.ui.form.TextField();
+ t1.set({
+ left: 20,
+ top:48,
+ height: 20,
+ value: ""
+ });
+
+ var a1 = new qx.ui.basic.Atom("");
+ a1.set({
+ left: 20,
+ top: 78,
+ width: 230,
+ height: 120,
+ backgroundColor: "orange",
+ border: qx.renderer.border.BorderPresets.getInstance().thinInset
+ });
+
+ var b1 = new qx.ui.form.Button("add to history");
+ b1.set({
+ top: 48,
+ left: 150,
+ height: 20,
+ width: 100
+ });
+ b1.addEventListener("execute", function() {
+ var data = t1.getValue();
+ if (!data) return;
+ t1.setValue("");
+ qx.client.Timer.once(function() {
+ history.addToHistory(data, data);
+ }, this, 100);
+ });
+
+ d.add(t1, a1, b1);
+
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/HorizontalBoxLayout_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/HorizontalBoxLayout_1.html
new file mode 100644
index 0000000000..52ea8c5c07
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/HorizontalBoxLayout_1.html
@@ -0,0 +1,1261 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ Tests for the new implementation of the qx.ui.layout.HorizontalBoxLayout widget.
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var cl_white = new qx.renderer.color.Color("white");
+ var cl_blue = new qx.renderer.color.Color("blue");
+ var cl_yellow = new qx.renderer.color.Color("yellow");
+ var cl_green = new qx.renderer.color.Color("green");
+ var cl_orange = new qx.renderer.color.Color("orange");
+ var cl_purple = new qx.renderer.color.Color("purple");
+ var cl_aqua = new qx.renderer.color.Color("aqua");
+ var cl_fuchsia = new qx.renderer.color.Color("fuchsia");
+
+
+ /* ***********************************************
+
+ EXAMPLE ONE:
+ LEFT ALIGN
+
+ *********************************************** */
+
+ var hbl1 = new qx.ui.layout.HorizontalBoxLayout;
+
+ hbl1.setTop(48);
+ hbl1.setLeft(20);
+ hbl1.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ hbl1.setHeight("auto");
+ hbl1.setRight(335);
+
+ hbl1.setSpacing(4);
+ hbl1.setPadding(8);
+
+ hbl1.setVerticalChildrenAlign("bottom");
+
+
+ var w1_1 = new qx.ui.layout.CanvasLayout;
+ w1_1.setWidth(25);
+ w1_1.setHeight(25);
+ w1_1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w1_1.setBackgroundColor(cl_white);
+ // w1_1.setMaxHeight(40);
+
+ var w1_2 = new qx.ui.layout.CanvasLayout;
+ w1_2.setWidth(25);
+ w1_2.setHeight(25);
+ w1_2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w1_2.setBackgroundColor(cl_blue);
+ w1_2.setBottom(10);
+
+ var w1_3 = new qx.ui.layout.CanvasLayout;
+ w1_3.setWidth(25);
+ w1_3.setHeight("100%");
+ w1_3.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w1_3.setBackgroundColor(cl_yellow);
+
+ var w1_4 = new qx.ui.layout.CanvasLayout;
+ w1_4.setWidth(25);
+ w1_4.setHeight(25);
+ w1_4.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w1_4.setBackgroundColor(cl_green);
+
+ var w1_5 = new qx.ui.layout.CanvasLayout;
+ w1_5.setWidth(40);
+ // w1_5.setHeight(25);
+ w1_5.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w1_5.setBackgroundColor(cl_orange);
+
+ var w1_6 = new qx.ui.layout.CanvasLayout;
+ w1_6.setWidth(25);
+ w1_6.setHeight(25);
+ w1_6.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w1_6.setBackgroundColor(cl_purple);
+ w1_6.setTop(15);
+ w1_6.setLeft(-25);
+
+ var w1_7 = new qx.ui.basic.Image("icon/32/apps/accessories-clock.png");
+
+ var w1_8 = new qx.ui.basic.Image("icon/32/actions/format-color.png");
+
+ var w1_9 = new qx.ui.layout.CanvasLayout;
+ w1_9.setWidth(25);
+ w1_9.setHeight(25);
+ w1_9.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w1_9.setBackgroundColor(cl_aqua);
+
+ var w1_10 = new qx.ui.layout.CanvasLayout;
+ w1_10.setWidth(25);
+ w1_10.setHeight(25);
+ w1_10.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w1_10.setBackgroundColor(cl_fuchsia);
+
+ var hbl1_click = 0;
+ hbl1.addEventListener("click", function(e)
+ {
+ if (e.getTarget()!=this) {
+ return;
+ };
+
+ switch(hbl1_click)
+ {
+ case 0:
+ this.setRight(null);
+ this.setWidth("auto");
+ break;
+
+ case 1:
+ this.setHeight(30);
+ break;
+
+ case 2:
+ this.setHeight(80);
+ break;
+
+ case 3:
+ this.setHeight("auto");
+ break;
+
+ case 4:
+ this.setWidth(200);
+ break;
+
+ case 5:
+ this.setWidth(null);
+ this.setRight(335);
+ hbl1_click = 0;
+ return;
+ };
+
+ hbl1_click++;
+ });
+
+ w1_1.addEventListener("click", function(e)
+ {
+ if (this.getWidth() == 25)
+ {
+ this.setWidth(65);
+ this.setHeight(65);
+ this.setBorder(new qx.renderer.border.Border(6, "double", "black"));
+ }
+ else
+ {
+ this.setWidth(25);
+ this.setHeight(25);
+ this.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ };
+ });
+
+ w1_2.addEventListener("click", function(e) {
+ this.getMarginRight() == 0 ? this.setMarginRight(10) : this.setMarginRight(0);
+ });
+
+ w1_3.addEventListener("click", function(e) {
+ this.getMinWidth() == -Infinity ? this.setMinWidth(100) : this.setMinWidth(-Infinity);
+ });
+
+ w1_4.addEventListener("click", function(e) {
+ this.getWidth() == 25 ? this.setWidth(50) : this.setWidth(25);
+ });
+
+ w1_5.addEventListener("click", function(e) {
+ this.getWidth() == 40 ? this.setWidth(80) : this.setWidth(40);
+ });
+
+ w1_6.addEventListener("click", function(e) {
+ this.getLeft() == -25 ? this.setLeft(25) : this.setLeft(-25);
+ });
+
+ w1_7.addEventListener("click", function(e) {
+ this.getSource() == "icon/32/apps/accessories-clock.png" ? this.setSource("icon/64/apps/accessories-clock.png") : this.setSource("icon/32/apps/accessories-clock.png");
+ });
+
+ w1_8.addEventListener("click", function(e) {
+ this.getSource() == "icon/32/actions/format-color.png" ? this.setSource("icon/16/actions/format-color.png") : this.setSource("icon/32/actions/format-color.png");
+ });
+
+ w1_9.addEventListener("click", function(e)
+ {
+ if (this.getTop() == null)
+ {
+ this.setTop(20);
+ this.setLeft(-10);
+ }
+ else
+ {
+ this.setTop(null);
+ this.setLeft(null);
+ };
+ });
+
+ w1_10.addEventListener("click", function(e)
+ {
+ if (this.getWidth() == 25)
+ {
+ this.setWidth(10);
+ this.setHeight(10);
+ this.setLeft(-5);
+ this.setBottom(15);
+ }
+ else
+ {
+ this.setWidth(25);
+ this.setHeight(25);
+ this.setLeft(null);
+ this.setBottom(null);
+ };
+ });
+
+
+
+ hbl1.add(w1_1, w1_2, w1_3, w1_4, w1_5, w1_6, w1_7, w1_8, w1_9, w1_10);
+ d.add(hbl1);
+
+
+
+
+
+ /* ***********************************************
+
+ EXAMPLE TWO:
+ RIGHT ALIGN
+
+ *********************************************** */
+
+ var hbl2 = new qx.ui.layout.HorizontalBoxLayout;
+
+ hbl2.setTop(138);
+ hbl2.setLeft(20);
+ hbl2.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ hbl2.setHeight("auto");
+ hbl2.setRight(335);
+
+ hbl2.setSpacing(4);
+ hbl2.setPadding(8);
+
+ hbl2.setHorizontalChildrenAlign("right");
+ hbl2.setVerticalChildrenAlign("middle");
+
+
+ var w2_1 = new qx.ui.layout.CanvasLayout;
+ w2_1.setWidth(25);
+ w2_1.setHeight(25);
+ w2_1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w2_1.setBackgroundColor(cl_white);
+ // w2_1.setMaxHeight(40);
+
+ var w2_2 = new qx.ui.layout.CanvasLayout;
+ w2_2.setWidth(25);
+ w2_2.setHeight(25);
+ w2_2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w2_2.setBackgroundColor(cl_blue);
+ w2_2.setBottom(10);
+
+ var w2_3 = new qx.ui.layout.CanvasLayout;
+ w2_3.setWidth(25);
+ w2_3.setHeight("100%");
+ w2_3.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w2_3.setBackgroundColor(cl_yellow);
+
+ var w2_4 = new qx.ui.layout.CanvasLayout;
+ w2_4.setWidth(25);
+ w2_4.setHeight(25);
+ w2_4.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w2_4.setBackgroundColor(cl_green);
+
+ var w2_5 = new qx.ui.layout.CanvasLayout;
+ w2_5.setWidth(40);
+ // w2_5.setHeight(25);
+ w2_5.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w2_5.setBackgroundColor(cl_orange);
+
+ var w2_6 = new qx.ui.layout.CanvasLayout;
+ w2_6.setWidth(25);
+ w2_6.setHeight(25);
+ w2_6.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w2_6.setBackgroundColor(cl_purple);
+ w2_6.setTop(15);
+ w2_6.setLeft(-25);
+
+ var w2_7 = new qx.ui.basic.Image("icon/32/apps/accessories-clock.png");
+
+ var w2_8 = new qx.ui.basic.Image("icon/32/actions/format-color.png");
+
+ var w2_9 = new qx.ui.layout.CanvasLayout;
+ w2_9.setWidth(25);
+ w2_9.setHeight(25);
+ w2_9.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w2_9.setBackgroundColor(cl_aqua);
+
+ var w2_10 = new qx.ui.layout.CanvasLayout;
+ w2_10.setWidth(25);
+ w2_10.setHeight(25);
+ w2_10.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w2_10.setBackgroundColor(cl_fuchsia);
+ w2_10.foo = true;
+
+
+ var hbl2_click = 0;
+ hbl2.addEventListener("click", function(e)
+ {
+ if (e.getTarget()!=this) {
+ return;
+ };
+
+ switch(hbl2_click)
+ {
+ case 0:
+ this.setRight(null);
+ this.setWidth("auto");
+ break;
+
+ case 1:
+ this.setHeight(30);
+ break;
+
+ case 2:
+ this.setHeight(80);
+ break;
+
+ case 3:
+ this.setHeight("auto");
+ break;
+
+ case 4:
+ this.setWidth(200);
+ break;
+
+ case 5:
+ this.setWidth(null);
+ this.setRight(335);
+ hbl2_click = 0;
+ return;
+ };
+
+ hbl2_click++;
+ });
+
+ w2_1.addEventListener("click", function(e)
+ {
+ if (this.getWidth() == 25)
+ {
+ this.setWidth(65);
+ this.setHeight(65);
+ this.setBorder(new qx.renderer.border.Border(6, "double", "black"));
+ }
+ else
+ {
+ this.setWidth(25);
+ this.setHeight(25);
+ this.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ };
+ });
+
+ w2_2.addEventListener("click", function(e) {
+ this.getMarginRight() == 0 ? this.setMarginRight(10) : this.setMarginRight(0);
+ });
+
+ w2_3.addEventListener("click", function(e) {
+ this.getMinWidth() == -Infinity ? this.setMinWidth(100) : this.setMinWidth(-Infinity);
+ });
+
+ w2_4.addEventListener("click", function(e) {
+ this.getWidth() == 25 ? this.setWidth(50) : this.setWidth(25);
+ });
+
+ w2_5.addEventListener("click", function(e) {
+ this.getWidth() == 40 ? this.setWidth(80) : this.setWidth(40);
+ });
+
+ w2_6.addEventListener("click", function(e) {
+ this.getLeft() == -25 ? this.setLeft(25) : this.setLeft(-25);
+ });
+
+ w2_7.addEventListener("click", function(e) {
+ this.getSource() == "icon/32/apps/accessories-clock.png" ? this.setSource("icon/64/apps/accessories-clock.png") : this.setSource("icon/32/apps/accessories-clock.png");
+ });
+
+ w2_8.addEventListener("click", function(e) {
+ this.getSource() == "icon/32/actions/format-color.png" ? this.setSource("icon/16/actions/format-color.png") : this.setSource("icon/32/actions/format-color.png");
+ });
+
+ w2_9.addEventListener("click", function(e)
+ {
+ if (this.getTop() == null)
+ {
+ this.setTop(20);
+ this.setLeft(-10);
+ }
+ else
+ {
+ this.setTop(null);
+ this.setLeft(null);
+ };
+ });
+
+ w2_10.addEventListener("click", function(e)
+ {
+ if (this.getWidth() == 25)
+ {
+ this.setWidth(10);
+ this.setHeight(10);
+ this.setLeft(-5);
+ this.setBottom(15);
+ }
+ else
+ {
+ this.setWidth(25);
+ this.setHeight(25);
+ this.setLeft(null);
+ this.setBottom(null);
+ };
+ });
+
+
+
+ hbl2.add(w2_1, w2_2, w2_3, w2_4, w2_5, w2_6, w2_7, w2_8, w2_9, w2_10);
+ d.add(hbl2);
+
+
+ /* ***********************************************
+
+ EXAMPLE THREE:
+ CENTER ALIGN
+
+ *********************************************** */
+
+ var hbl3 = new qx.ui.layout.HorizontalBoxLayout;
+
+ hbl3.setTop(228);
+ hbl3.setLeft(20);
+ hbl3.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ hbl3.setHeight("auto");
+ hbl3.setRight(335);
+
+ hbl3.setSpacing(4);
+ hbl3.setPadding(8);
+
+ hbl3.setHorizontalChildrenAlign("center");
+
+
+
+ var w3_1 = new qx.ui.layout.CanvasLayout;
+ w3_1.setWidth(25);
+ w3_1.setHeight(25);
+ w3_1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w3_1.setBackgroundColor(cl_white);
+ // w3_1.setMaxHeight(40);
+
+ var w3_2 = new qx.ui.layout.CanvasLayout;
+ w3_2.setWidth(25);
+ w3_2.setHeight(25);
+ w3_2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w3_2.setBackgroundColor(cl_blue);
+ w3_2.setBottom(10);
+
+ var w3_3 = new qx.ui.layout.CanvasLayout;
+ w3_3.setWidth(25);
+ w3_3.setHeight("100%");
+ w3_3.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w3_3.setBackgroundColor(cl_yellow);
+
+ var w3_4 = new qx.ui.layout.CanvasLayout;
+ w3_4.setWidth(25);
+ w3_4.setHeight(25);
+ w3_4.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w3_4.setBackgroundColor(cl_green);
+
+ var w3_5 = new qx.ui.layout.CanvasLayout;
+ w3_5.setWidth(40);
+ // w3_5.setHeight(25);
+ w3_5.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w3_5.setBackgroundColor(cl_orange);
+
+ var w3_6 = new qx.ui.layout.CanvasLayout;
+ w3_6.setWidth(25);
+ w3_6.setHeight(25);
+ w3_6.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w3_6.setBackgroundColor(cl_purple);
+ w3_6.setTop(15);
+ w3_6.setLeft(-25);
+
+ var w3_7 = new qx.ui.basic.Image("icon/32/apps/accessories-clock.png");
+
+ var w3_8 = new qx.ui.basic.Image("icon/32/actions/format-color.png");
+
+ var w3_9 = new qx.ui.layout.CanvasLayout;
+ w3_9.setWidth(25);
+ w3_9.setHeight(25);
+ w3_9.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w3_9.setBackgroundColor(cl_aqua);
+
+ var w3_10 = new qx.ui.layout.CanvasLayout;
+ w3_10.setWidth(25);
+ w3_10.setHeight(25);
+ w3_10.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w3_10.setBackgroundColor(cl_fuchsia);
+
+
+ var hbl3_click = 0;
+ hbl3.addEventListener("click", function(e)
+ {
+ if (e.getTarget()!=this) {
+ return;
+ };
+
+ switch(hbl3_click)
+ {
+ case 0:
+ this.setRight(null);
+ this.setWidth("auto");
+ break;
+
+ case 1:
+ this.setHeight(30);
+ break;
+
+ case 2:
+ this.setHeight(80);
+ break;
+
+ case 3:
+ this.setHeight("auto");
+ break;
+
+ case 4:
+ this.setWidth(200);
+ break;
+
+ case 5:
+ this.setWidth(null);
+ this.setRight(335);
+ hbl3_click = 0;
+ return;
+ };
+
+ hbl3_click++;
+ });
+
+ w3_1.addEventListener("click", function(e)
+ {
+ if (this.getWidth() == 25)
+ {
+ this.setWidth(65);
+ this.setHeight(65);
+ this.setBorder(new qx.renderer.border.Border(6, "double", "black"));
+ }
+ else
+ {
+ this.setWidth(25);
+ this.setHeight(25);
+ this.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ };
+ });
+
+ w3_2.addEventListener("click", function(e) {
+ this.getMarginRight() == 0 ? this.setMarginRight(10) : this.setMarginRight(0);
+ });
+
+ w3_3.addEventListener("click", function(e) {
+ this.getMinWidth() == -Infinity ? this.setMinWidth(100) : this.setMinWidth(-Infinity);
+ });
+
+ w3_4.addEventListener("click", function(e) {
+ this.getWidth() == 25 ? this.setWidth(50) : this.setWidth(25);
+ });
+
+ w3_5.addEventListener("click", function(e) {
+ this.getWidth() == 40 ? this.setWidth(80) : this.setWidth(40);
+ });
+
+ w3_6.addEventListener("click", function(e) {
+ this.getLeft() == -25 ? this.setLeft(25) : this.setLeft(-25);
+ });
+
+ w3_7.addEventListener("click", function(e) {
+ this.getSource() == "icon/32/apps/accessories-clock.png" ? this.setSource("icon/64/apps/accessories-clock.png") : this.setSource("icon/32/apps/accessories-clock.png");
+ });
+
+ w3_8.addEventListener("click", function(e) {
+ this.getSource() == "icon/32/actions/format-color.png" ? this.setSource("icon/16/actions/format-color.png") : this.setSource("icon/32/actions/format-color.png");
+ });
+
+ w3_9.addEventListener("click", function(e)
+ {
+ if (this.getTop() == null)
+ {
+ this.setTop(20);
+ this.setLeft(-10);
+ }
+ else
+ {
+ this.setTop(null);
+ this.setLeft(null);
+ };
+ });
+
+ w3_10.addEventListener("click", function(e)
+ {
+ if (this.getWidth() == 25)
+ {
+ this.setWidth(10);
+ this.setHeight(10);
+ this.setLeft(-5);
+ this.setBottom(15);
+ }
+ else
+ {
+ this.setWidth(25);
+ this.setHeight(25);
+ this.setLeft(null);
+ this.setBottom(null);
+ };
+ });
+
+
+
+ hbl3.add(w3_1, w3_2, w3_3, w3_4, w3_5, w3_6, w3_7, w3_8, w3_9, w3_10);
+ d.add(hbl3);
+
+
+
+
+ /* ***********************************************
+
+ EXAMPLE FOUR:
+ LEFT ALIGN, REVERTED CHILDREN ORDER
+
+ *********************************************** */
+
+ var hbl4 = new qx.ui.layout.HorizontalBoxLayout;
+
+ hbl4.setTop(318);
+ hbl4.setLeft(20);
+ hbl4.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ hbl4.setWidth(null);
+ hbl4.setRight(335);
+
+ hbl4.setSpacing(4);
+ hbl4.setPadding(8);
+ hbl4.setReverseChildrenOrder(true);
+ hbl4.setVerticalChildrenAlign("bottom");
+
+ hbl4.setHeight(80);
+
+
+
+ var w4_1 = new qx.ui.layout.CanvasLayout;
+ w4_1.setWidth(25);
+ w4_1.setHeight(25);
+ w4_1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w4_1.setBackgroundColor(cl_white);
+ // w4_1.setMaxHeight(40);
+
+ var w4_2 = new qx.ui.layout.CanvasLayout;
+ w4_2.setWidth(25);
+ w4_2.setHeight(25);
+ w4_2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w4_2.setBackgroundColor(cl_blue);
+ w4_2.setBottom(10);
+
+ var w4_3 = new qx.ui.layout.CanvasLayout;
+ w4_3.setWidth(25);
+ w4_3.setHeight("100%");
+ w4_3.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w4_3.setBackgroundColor(cl_yellow);
+
+ var w4_4 = new qx.ui.layout.CanvasLayout;
+ w4_4.setWidth(25);
+ w4_4.setHeight(25);
+ w4_4.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w4_4.setBackgroundColor(cl_green);
+
+ var w4_5 = new qx.ui.layout.CanvasLayout;
+ w4_5.setWidth(40);
+ // w4_5.setHeight(25);
+ w4_5.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w4_5.setBackgroundColor(cl_orange);
+
+ var w4_6 = new qx.ui.layout.CanvasLayout;
+ w4_6.setWidth(25);
+ w4_6.setHeight(25);
+ w4_6.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w4_6.setBackgroundColor(cl_purple);
+ w4_6.setTop(15);
+ w4_6.setLeft(-25);
+
+ var w4_7 = new qx.ui.basic.Image("icon/32/apps/accessories-clock.png");
+
+ var w4_8 = new qx.ui.basic.Image("icon/32/actions/format-color.png");
+
+ var w4_9 = new qx.ui.layout.CanvasLayout;
+ w4_9.setWidth(25);
+ w4_9.setHeight(25);
+ w4_9.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w4_9.setBackgroundColor(cl_aqua);
+
+ var w4_10 = new qx.ui.layout.CanvasLayout;
+ w4_10.setWidth(25);
+ w4_10.setHeight(25);
+ w4_10.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w4_10.setBackgroundColor(cl_fuchsia);
+
+
+ var hbl4_click = 0;
+ hbl4.addEventListener("click", function(e)
+ {
+ if (e.getTarget()!=this) {
+ return;
+ };
+
+ switch(hbl4_click)
+ {
+ case 0:
+ this.setRight(null);
+ this.setWidth("auto");
+ break;
+
+ case 1:
+ this.setHeight(30);
+ break;
+
+ case 2:
+ this.setHeight("auto");
+ break;
+
+ case 3:
+ this.setHeight(80);
+ break;
+
+ case 4:
+ this.setWidth(200);
+ break;
+
+ case 5:
+ this.setWidth(null);
+ this.setRight(335);
+ hbl4_click = 0;
+ return;
+ };
+
+ hbl4_click++;
+ });
+
+ w4_1.addEventListener("click", function(e)
+ {
+ if (this.getWidth() == 25)
+ {
+ this.setWidth(65);
+ this.setHeight(65);
+ this.setBorder(new qx.renderer.border.Border(6, "double", "black"));
+ }
+ else
+ {
+ this.setWidth(25);
+ this.setHeight(25);
+ this.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ };
+ });
+
+ w4_2.addEventListener("click", function(e) {
+ this.getMarginRight() == 0 ? this.setMarginRight(10) : this.setMarginRight(0);
+ });
+
+ w4_3.addEventListener("click", function(e) {
+ this.getMinWidth() == -Infinity ? this.setMinWidth(100) : this.setMinWidth(-Infinity);
+ });
+
+ w4_4.addEventListener("click", function(e) {
+ this.getWidth() == 25 ? this.setWidth(50) : this.setWidth(25);
+ });
+
+ w4_5.addEventListener("click", function(e) {
+ this.getWidth() == 40 ? this.setWidth(80) : this.setWidth(40);
+ });
+
+ w4_6.addEventListener("click", function(e) {
+ this.getLeft() == -25 ? this.setLeft(25) : this.setLeft(-25);
+ });
+
+ w4_7.addEventListener("click", function(e) {
+ this.getSource() == "icon/32/apps/accessories-clock.png" ? this.setSource("icon/64/apps/accessories-clock.png") : this.setSource("icon/32/apps/accessories-clock.png");
+ });
+
+ w4_8.addEventListener("click", function(e) {
+ this.getSource() == "icon/32/actions/format-color.png" ? this.setSource("icon/16/actions/format-color.png") : this.setSource("icon/32/actions/format-color.png");
+ });
+
+ w4_9.addEventListener("click", function(e)
+ {
+ if (this.getTop() == null)
+ {
+ this.setTop(20);
+ this.setLeft(-10);
+ }
+ else
+ {
+ this.setTop(null);
+ this.setLeft(null);
+ };
+ });
+
+ w4_10.addEventListener("click", function(e)
+ {
+ if (this.getWidth() == 25)
+ {
+ this.setWidth(10);
+ this.setHeight(10);
+ this.setLeft(-5);
+ this.setBottom(15);
+ }
+ else
+ {
+ this.setWidth(25);
+ this.setHeight(25);
+ this.setLeft(null);
+ this.setBottom(null);
+ };
+ });
+
+
+
+ hbl4.add(w4_1, w4_2, w4_3, w4_4, w4_5, w4_6, w4_7, w4_8, w4_9, w4_10);
+ d.add(hbl4);
+
+
+
+
+ /* ***********************************************
+
+ EXAMPLE FIVE:
+ RIGHT ALIGN, REVERTED CHILDREN ORDER
+
+ *********************************************** */
+
+ var hbl5 = new qx.ui.layout.HorizontalBoxLayout;
+
+ hbl5.setTop(408);
+ hbl5.setLeft(20);
+ hbl5.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ hbl5.setWidth(null);
+ hbl5.setRight(335);
+
+ hbl5.setSpacing(4);
+ hbl5.setPadding(8);
+
+ hbl5.setHorizontalChildrenAlign("right");
+ hbl5.setReverseChildrenOrder(true);
+ hbl5.setVerticalChildrenAlign("middle");
+
+ hbl5.setHeight(80);
+
+
+ var w5_1 = new qx.ui.layout.CanvasLayout;
+ w5_1.setWidth(25);
+ w5_1.setHeight(25);
+ w5_1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w5_1.setBackgroundColor(cl_white);
+ // w5_1.setMaxHeight(40);
+
+ var w5_2 = new qx.ui.layout.CanvasLayout;
+ w5_2.setWidth(25);
+ w5_2.setHeight(25);
+ w5_2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w5_2.setBackgroundColor(cl_blue);
+ w5_2.setBottom(10);
+
+ var w5_3 = new qx.ui.layout.CanvasLayout;
+ w5_3.setWidth(25);
+ w5_3.setHeight("100%");
+ w5_3.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w5_3.setBackgroundColor(cl_yellow);
+
+ var w5_4 = new qx.ui.layout.CanvasLayout;
+ w5_4.setWidth(25);
+ w5_4.setHeight(25);
+ w5_4.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w5_4.setBackgroundColor(cl_green);
+
+ var w5_5 = new qx.ui.layout.CanvasLayout;
+ w5_5.setWidth(40);
+ // w5_5.setHeight(25);
+ w5_5.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w5_5.setBackgroundColor(cl_orange);
+
+ var w5_6 = new qx.ui.layout.CanvasLayout;
+ w5_6.setWidth(25);
+ w5_6.setHeight(25);
+ w5_6.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w5_6.setBackgroundColor(cl_purple);
+ w5_6.setTop(15);
+ w5_6.setLeft(-25);
+
+ var w5_7 = new qx.ui.basic.Image("icon/32/apps/accessories-clock.png");
+
+ var w5_8 = new qx.ui.basic.Image("icon/32/actions/format-color.png");
+
+ var w5_9 = new qx.ui.layout.CanvasLayout;
+ w5_9.setWidth(25);
+ w5_9.setHeight(25);
+ w5_9.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w5_9.setBackgroundColor(cl_aqua);
+
+ var w5_10 = new qx.ui.layout.CanvasLayout;
+ w5_10.setWidth(25);
+ w5_10.setHeight(25);
+ w5_10.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w5_10.setBackgroundColor(cl_fuchsia);
+
+
+ var hbl5_click = 0;
+ hbl5.addEventListener("click", function(e)
+ {
+ if (e.getTarget()!=this) {
+ return;
+ };
+
+ switch(hbl5_click)
+ {
+ case 0:
+ this.setRight(null);
+ this.setWidth("auto");
+ break;
+
+ case 1:
+ this.setHeight(30);
+ break;
+
+ case 2:
+ this.setHeight("auto");
+ break;
+
+ case 3:
+ this.setHeight(80);
+ break;
+
+ case 4:
+ this.setWidth(200);
+ break;
+
+ case 5:
+ this.setWidth(null);
+ this.setRight(335);
+ hbl5_click = 0;
+ return;
+ };
+
+ hbl5_click++;
+ });
+
+ w5_1.addEventListener("click", function(e)
+ {
+ if (this.getWidth() == 25)
+ {
+ this.setWidth(65);
+ this.setHeight(65);
+ this.setBorder(new qx.renderer.border.Border(6, "double", "black"));
+ }
+ else
+ {
+ this.setWidth(25);
+ this.setHeight(25);
+ this.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ };
+ });
+
+ w5_2.addEventListener("click", function(e) {
+ this.getMarginRight() == 0 ? this.setMarginRight(10) : this.setMarginRight(0);
+ });
+
+ w5_3.addEventListener("click", function(e) {
+ this.getMinWidth() == -Infinity ? this.setMinWidth(100) : this.setMinWidth(-Infinity);
+ });
+
+ w5_4.addEventListener("click", function(e) {
+ this.getWidth() == 25 ? this.setWidth(50) : this.setWidth(25);
+ });
+
+ w5_5.addEventListener("click", function(e) {
+ this.getWidth() == 40 ? this.setWidth(80) : this.setWidth(40);
+ });
+
+ w5_6.addEventListener("click", function(e) {
+ this.getLeft() == -25 ? this.setLeft(25) : this.setLeft(-25);
+ });
+
+ w5_7.addEventListener("click", function(e) {
+ this.getSource() == "icon/32/apps/accessories-clock.png" ? this.setSource("icon/64/apps/accessories-clock.png") : this.setSource("icon/32/apps/accessories-clock.png");
+ });
+
+ w5_8.addEventListener("click", function(e) {
+ this.getSource() == "icon/32/actions/format-color.png" ? this.setSource("icon/16/actions/format-color.png") : this.setSource("icon/32/actions/format-color.png");
+ });
+
+ w5_9.addEventListener("click", function(e)
+ {
+ if (this.getTop() == null)
+ {
+ this.setTop(20);
+ this.setLeft(-10);
+ }
+ else
+ {
+ this.setTop(null);
+ this.setLeft(null);
+ };
+ });
+
+ w5_10.addEventListener("click", function(e)
+ {
+ if (this.getWidth() == 25)
+ {
+ this.setWidth(10);
+ this.setHeight(10);
+ this.setLeft(-5);
+ this.setBottom(15);
+ }
+ else
+ {
+ this.setWidth(25);
+ this.setHeight(25);
+ this.setLeft(null);
+ this.setBottom(null);
+ };
+ });
+
+
+
+ hbl5.add(w5_1, w5_2, w5_3, w5_4, w5_5, w5_6, w5_7, w5_8, w5_9, w5_10);
+ d.add(hbl5);
+
+
+
+
+
+
+
+
+ /* ***********************************************
+
+ EXAMPLE SIX:
+ CENTER ALIGN, REVERTED CHILDREN ORDER
+
+ *********************************************** */
+
+ var hbl6 = new qx.ui.layout.HorizontalBoxLayout;
+
+ hbl6.setTop(498);
+ hbl6.setLeft(20);
+ hbl6.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ hbl6.setWidth(null);
+ hbl6.setRight(335);
+
+ hbl6.setSpacing(4);
+ hbl6.setPadding(8);
+
+ hbl6.setHorizontalChildrenAlign("center");
+ hbl6.setReverseChildrenOrder(true);
+ hbl6.setHeight(80);
+
+
+ var w6_1 = new qx.ui.layout.CanvasLayout;
+ w6_1.setWidth(25);
+ w6_1.setHeight(25);
+ w6_1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w6_1.setBackgroundColor(cl_white);
+ // w6_1.setMaxHeight(40);
+
+ var w6_2 = new qx.ui.layout.CanvasLayout;
+ w6_2.setWidth(25);
+ w6_2.setHeight(25);
+ w6_2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w6_2.setBackgroundColor(cl_blue);
+ w6_2.setBottom(10);
+
+ var w6_3 = new qx.ui.layout.CanvasLayout;
+ w6_3.setWidth(25);
+ w6_3.setHeight("100%");
+ w6_3.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w6_3.setBackgroundColor(cl_yellow);
+
+ var w6_4 = new qx.ui.layout.CanvasLayout;
+ w6_4.setWidth(25);
+ w6_4.setHeight(25);
+ w6_4.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w6_4.setBackgroundColor(cl_green);
+
+ var w6_5 = new qx.ui.layout.CanvasLayout;
+ w6_5.setWidth(40);
+ // w6_5.setHeight(25);
+ w6_5.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w6_5.setBackgroundColor(cl_orange);
+
+ var w6_6 = new qx.ui.layout.CanvasLayout;
+ w6_6.setWidth(25);
+ w6_6.setHeight(25);
+ w6_6.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w6_6.setBackgroundColor(cl_purple);
+ w6_6.setTop(15);
+ w6_6.setLeft(-25);
+
+ var w6_7 = new qx.ui.basic.Image("icon/32/apps/accessories-clock.png");
+
+ var w6_8 = new qx.ui.basic.Image("icon/32/actions/format-color.png");
+
+ var w6_9 = new qx.ui.layout.CanvasLayout;
+ w6_9.setWidth(25);
+ w6_9.setHeight(25);
+ w6_9.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w6_9.setBackgroundColor(cl_aqua);
+
+ var w6_10 = new qx.ui.layout.CanvasLayout;
+ w6_10.setWidth(25);
+ w6_10.setHeight(25);
+ w6_10.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w6_10.setBackgroundColor(cl_fuchsia);
+
+
+ var hbl6_click = 0;
+ hbl6.addEventListener("click", function(e)
+ {
+ if (e.getTarget()!=this) {
+ return;
+ };
+
+ switch(hbl6_click)
+ {
+ case 0:
+ this.setRight(null);
+ this.setWidth("auto");
+ break;
+
+ case 1:
+ this.setHeight(30);
+ break;
+
+ case 2:
+ this.setHeight("auto");
+ break;
+
+ case 3:
+ this.setHeight(80);
+ break;
+
+ case 4:
+ this.setWidth(200);
+ break;
+
+ case 5:
+ this.setWidth(null);
+ this.setRight(335);
+ hbl6_click = 0;
+ return;
+ };
+
+ hbl6_click++;
+ });
+
+ w6_1.addEventListener("click", function(e)
+ {
+ if (this.getWidth() == 25)
+ {
+ this.setWidth(65);
+ this.setHeight(65);
+ this.setBorder(new qx.renderer.border.Border(6, "double", "black"));
+ }
+ else
+ {
+ this.setWidth(25);
+ this.setHeight(25);
+ this.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ };
+ });
+
+ w6_2.addEventListener("click", function(e) {
+ this.getMarginRight() == 0 ? this.setMarginRight(10) : this.setMarginRight(0);
+ });
+
+ w6_3.addEventListener("click", function(e) {
+ this.getMinWidth() == -Infinity ? this.setMinWidth(100) : this.setMinWidth(-Infinity);
+ });
+
+ w6_4.addEventListener("click", function(e) {
+ this.getWidth() == 25 ? this.setWidth(50) : this.setWidth(25);
+ });
+
+ w6_5.addEventListener("click", function(e) {
+ this.getWidth() == 40 ? this.setWidth(80) : this.setWidth(40);
+ });
+
+ w6_6.addEventListener("click", function(e) {
+ this.getLeft() == -25 ? this.setLeft(25) : this.setLeft(-25);
+ });
+
+ w6_7.addEventListener("click", function(e) {
+ this.getSource() == "icon/32/apps/accessories-clock.png" ? this.setSource("icon/64/apps/accessories-clock.png") : this.setSource("icon/32/apps/accessories-clock.png");
+ });
+
+ w6_8.addEventListener("click", function(e) {
+ this.getSource() == "icon/32/actions/format-color.png" ? this.setSource("icon/16/actions/format-color.png") : this.setSource("icon/32/actions/format-color.png");
+ });
+
+ w6_9.addEventListener("click", function(e)
+ {
+ if (this.getTop() == null)
+ {
+ this.setTop(20);
+ this.setLeft(-10);
+ }
+ else
+ {
+ this.setTop(null);
+ this.setLeft(null);
+ };
+ });
+
+ w6_10.addEventListener("click", function(e)
+ {
+ if (this.getWidth() == 25)
+ {
+ this.setWidth(10);
+ this.setHeight(10);
+ this.setLeft(-5);
+ this.setBottom(15);
+ }
+ else
+ {
+ this.setWidth(25);
+ this.setHeight(25);
+ this.setLeft(null);
+ this.setBottom(null);
+ };
+ });
+
+
+
+ hbl6.add(w6_1, w6_2, w6_3, w6_4, w6_5, w6_6, w6_7, w6_8, w6_9, w6_10);
+ d.add(hbl6);
+
+
+
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/HorizontalBoxLayout_2.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/HorizontalBoxLayout_2.html
new file mode 100644
index 0000000000..80520ddc64
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/HorizontalBoxLayout_2.html
@@ -0,0 +1,1233 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ Tests for the new implementation of the qx.ui.layout.HorizontalBoxLayout widget.
+ This example includes a child with a width defined as percent. This makes
+ things much more complex (especially on resizing of the parent) so this also
+ dramatically reduces the speed ;)
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var cl_white = new qx.renderer.color.Color("white");
+ var cl_blue = new qx.renderer.color.Color("blue");
+ var cl_yellow = new qx.renderer.color.Color("yellow");
+ var cl_green = new qx.renderer.color.Color("green");
+ var cl_orange = new qx.renderer.color.Color("orange");
+ var cl_purple = new qx.renderer.color.Color("purple");
+ var cl_aqua = new qx.renderer.color.Color("aqua");
+ var cl_fuchsia = new qx.renderer.color.Color("fuchsia");
+
+ /* ***********************************************
+
+ EXAMPLE ONE:
+ LEFT ALIGN
+
+ *********************************************** */
+
+ var hbl1 = new qx.ui.layout.HorizontalBoxLayout;
+
+ hbl1.setTop(48);
+ hbl1.setLeft(20);
+ hbl1.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ hbl1.setHeight("auto");
+ hbl1.setRight(335);
+
+ hbl1.setSpacing(4);
+ hbl1.setPadding(8);
+
+ hbl1.setVerticalChildrenAlign("bottom");
+
+
+ var w1_1 = new qx.ui.layout.CanvasLayout;
+ w1_1.setWidth(25);
+ w1_1.setHeight(25);
+ w1_1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w1_1.setBackgroundColor(cl_white);
+ // w1_1.setMaxHeight(40);
+
+ var w1_2 = new qx.ui.layout.CanvasLayout;
+ w1_2.setWidth(25);
+ w1_2.setHeight(25);
+ w1_2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w1_2.setBackgroundColor(cl_blue);
+ w1_2.setBottom(10);
+
+ var w1_3 = new qx.ui.layout.CanvasLayout;
+ w1_3.setWidth(25);
+ w1_3.setHeight("100%");
+ w1_3.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w1_3.setBackgroundColor(cl_yellow);
+
+ var w1_4 = new qx.ui.layout.CanvasLayout;
+ w1_4.setWidth(25);
+ w1_4.setHeight(25);
+ w1_4.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w1_4.setBackgroundColor(cl_green);
+
+ var w1_5 = new qx.ui.layout.CanvasLayout;
+ w1_5.setWidth("15%");
+ // w1_5.setHeight(25);
+ w1_5.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w1_5.setBackgroundColor(cl_orange);
+
+ var w1_6 = new qx.ui.layout.CanvasLayout;
+ w1_6.setWidth(25);
+ w1_6.setHeight(25);
+ w1_6.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w1_6.setBackgroundColor(cl_purple);
+ w1_6.setTop(15);
+ w1_6.setLeft(-25);
+
+ var w1_7 = new qx.ui.basic.Image("icon/32/apps/accessories-clock.png");
+
+ var w1_8 = new qx.ui.basic.Image("icon/32/actions/format-color.png");
+
+ var w1_9 = new qx.ui.layout.CanvasLayout;
+ w1_9.setWidth(25);
+ w1_9.setHeight(25);
+ w1_9.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w1_9.setBackgroundColor(cl_aqua);
+
+ var w1_10 = new qx.ui.layout.CanvasLayout;
+ w1_10.setWidth(25);
+ w1_10.setHeight(25);
+ w1_10.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w1_10.setBackgroundColor(cl_fuchsia);
+
+ var hbl1_click = 0;
+ hbl1.addEventListener("click", function(e)
+ {
+ if (e.getTarget()!=this) {
+ return;
+ };
+
+ switch(hbl1_click)
+ {
+ case 0:
+ this.setHeight(30);
+ break;
+
+ case 1:
+ this.setHeight(80);
+ break;
+
+ case 2:
+ this.setHeight("auto");
+ break;
+
+ case 3:
+ this.setWidth(200);
+ break;
+
+ case 4:
+ this.setWidth(null);
+ this.setRight(335);
+ hbl1_click = 0;
+ return;
+ };
+
+ hbl1_click++;
+ });
+
+ w1_1.addEventListener("click", function(e)
+ {
+ if (this.getWidth() == 25)
+ {
+ this.setWidth(65);
+ this.setHeight(65);
+ this.setBorder(new qx.renderer.border.Border(6, "double", "black"));
+ }
+ else
+ {
+ this.setWidth(25);
+ this.setHeight(25);
+ this.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ };
+ });
+
+ w1_2.addEventListener("click", function(e) {
+ this.getMarginRight() == 0 ? this.setMarginRight(10) : this.setMarginRight(0);
+ });
+
+ w1_3.addEventListener("click", function(e) {
+ this.getMinWidth() == -Infinity ? this.setMinWidth(100) : this.setMinWidth(-Infinity);
+ });
+
+ w1_4.addEventListener("click", function(e) {
+ this.getWidth() == 25 ? this.setWidth(50) : this.setWidth(25);
+ });
+
+ w1_5.addEventListener("click", function(e) {
+ this.getWidth() == "15%" ? this.setWidth("30%") : this.setWidth("15%");
+ });
+
+ w1_6.addEventListener("click", function(e) {
+ this.getLeft() == -25 ? this.setLeft(25) : this.setLeft(-25);
+ });
+
+ w1_7.addEventListener("click", function(e) {
+ this.getSource() == "icon/32/apps/accessories-clock.png" ? this.setSource("icon/64/apps/accessories-clock.png") : this.setSource("icon/32/apps/accessories-clock.png");
+ });
+
+ w1_8.addEventListener("click", function(e) {
+ this.getSource() == "icon/32/actions/format-color.png" ? this.setSource("icon/16/actions/format-color.png") : this.setSource("icon/32/actions/format-color.png");
+ });
+
+ w1_9.addEventListener("click", function(e)
+ {
+ if (this.getTop() == null)
+ {
+ this.setTop(20);
+ this.setLeft(-10);
+ }
+ else
+ {
+ this.setTop(null);
+ this.setLeft(null);
+ };
+ });
+
+ w1_10.addEventListener("click", function(e)
+ {
+ if (this.getWidth() == 25)
+ {
+ this.setWidth(10);
+ this.setHeight(10);
+ this.setLeft(-5);
+ this.setBottom(15);
+ }
+ else
+ {
+ this.setWidth(25);
+ this.setHeight(25);
+ this.setLeft(null);
+ this.setBottom(null);
+ };
+ });
+
+
+
+ hbl1.add(w1_1, w1_2, w1_3, w1_4, w1_5, w1_6, w1_7, w1_8, w1_9, w1_10);
+ d.add(hbl1);
+
+
+
+
+
+ /* ***********************************************
+
+ EXAMPLE TWO:
+ RIGHT ALIGN
+
+ *********************************************** */
+
+ var hbl2 = new qx.ui.layout.HorizontalBoxLayout;
+
+ hbl2.setTop(138);
+ hbl2.setLeft(20);
+ hbl2.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ hbl2.setHeight("auto");
+ hbl2.setRight(335);
+
+ hbl2.setSpacing(4);
+ hbl2.setPadding(8);
+
+ hbl2.setHorizontalChildrenAlign("right");
+ hbl2.setVerticalChildrenAlign("middle");
+
+
+ var w2_1 = new qx.ui.layout.CanvasLayout;
+ w2_1.setWidth(25);
+ w2_1.setHeight(25);
+ w2_1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w2_1.setBackgroundColor(cl_white);
+ // w2_1.setMaxHeight(40);
+
+ var w2_2 = new qx.ui.layout.CanvasLayout;
+ w2_2.setWidth(25);
+ w2_2.setHeight(25);
+ w2_2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w2_2.setBackgroundColor(cl_blue);
+ w2_2.setBottom(10);
+
+ var w2_3 = new qx.ui.layout.CanvasLayout;
+ w2_3.setWidth(25);
+ w2_3.setHeight("100%");
+ w2_3.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w2_3.setBackgroundColor(cl_yellow);
+
+ var w2_4 = new qx.ui.layout.CanvasLayout;
+ w2_4.setWidth(25);
+ w2_4.setHeight(25);
+ w2_4.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w2_4.setBackgroundColor(cl_green);
+
+ var w2_5 = new qx.ui.layout.CanvasLayout;
+ w2_5.setWidth("15%");
+ // w2_5.setHeight(25);
+ w2_5.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w2_5.setBackgroundColor(cl_orange);
+
+ var w2_6 = new qx.ui.layout.CanvasLayout;
+ w2_6.setWidth(25);
+ w2_6.setHeight(25);
+ w2_6.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w2_6.setBackgroundColor(cl_purple);
+ w2_6.setTop(15);
+ w2_6.setLeft(-25);
+
+ var w2_7 = new qx.ui.basic.Image("icon/32/apps/accessories-clock.png");
+
+ var w2_8 = new qx.ui.basic.Image("icon/32/actions/format-color.png");
+
+ var w2_9 = new qx.ui.layout.CanvasLayout;
+ w2_9.setWidth(25);
+ w2_9.setHeight(25);
+ w2_9.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w2_9.setBackgroundColor(cl_aqua);
+
+ var w2_10 = new qx.ui.layout.CanvasLayout;
+ w2_10.setWidth(25);
+ w2_10.setHeight(25);
+ w2_10.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w2_10.setBackgroundColor(cl_fuchsia);
+ w2_10.foo = true;
+
+
+ var hbl2_click = 0;
+ hbl2.addEventListener("click", function(e)
+ {
+ if (e.getTarget()!=this) {
+ return;
+ };
+
+ switch(hbl2_click)
+ {
+ case 0:
+ this.setHeight(30);
+ break;
+
+ case 1:
+ this.setHeight(80);
+ break;
+
+ case 2:
+ this.setHeight("auto");
+ break;
+
+ case 3:
+ this.setWidth(200);
+ break;
+
+ case 4:
+ this.setWidth(null);
+ this.setRight(335);
+ hbl2_click = 0;
+ return;
+ };
+
+ hbl2_click++;
+ });
+
+ w2_1.addEventListener("click", function(e)
+ {
+ if (this.getWidth() == 25)
+ {
+ this.setWidth(65);
+ this.setHeight(65);
+ this.setBorder(new qx.renderer.border.Border(6, "double", "black"));
+ }
+ else
+ {
+ this.setWidth(25);
+ this.setHeight(25);
+ this.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ };
+ });
+
+ w2_2.addEventListener("click", function(e) {
+ this.getMarginRight() == 0 ? this.setMarginRight(10) : this.setMarginRight(0);
+ });
+
+ w2_3.addEventListener("click", function(e) {
+ this.getMinWidth() == -Infinity ? this.setMinWidth(100) : this.setMinWidth(-Infinity);
+ });
+
+ w2_4.addEventListener("click", function(e) {
+ this.getWidth() == 25 ? this.setWidth(50) : this.setWidth(25);
+ });
+
+ w2_5.addEventListener("click", function(e) {
+ this.getWidth() == "15%" ? this.setWidth("30%") : this.setWidth("15%");
+ });
+
+ w2_6.addEventListener("click", function(e) {
+ this.getLeft() == -25 ? this.setLeft(25) : this.setLeft(-25);
+ });
+
+ w2_7.addEventListener("click", function(e) {
+ this.getSource() == "icon/32/apps/accessories-clock.png" ? this.setSource("icon/64/apps/accessories-clock.png") : this.setSource("icon/32/apps/accessories-clock.png");
+ });
+
+ w2_8.addEventListener("click", function(e) {
+ this.getSource() == "icon/32/actions/format-color.png" ? this.setSource("icon/16/actions/format-color.png") : this.setSource("icon/32/actions/format-color.png");
+ });
+
+ w2_9.addEventListener("click", function(e)
+ {
+ if (this.getTop() == null)
+ {
+ this.setTop(20);
+ this.setLeft(-10);
+ }
+ else
+ {
+ this.setTop(null);
+ this.setLeft(null);
+ };
+ });
+
+ w2_10.addEventListener("click", function(e)
+ {
+ if (this.getWidth() == 25)
+ {
+ this.setWidth(10);
+ this.setHeight(10);
+ this.setLeft(-5);
+ this.setBottom(15);
+ }
+ else
+ {
+ this.setWidth(25);
+ this.setHeight(25);
+ this.setLeft(null);
+ this.setBottom(null);
+ };
+ });
+
+
+
+ hbl2.add(w2_1, w2_2, w2_3, w2_4, w2_5, w2_6, w2_7, w2_8, w2_9, w2_10);
+ d.add(hbl2);
+
+
+ /* ***********************************************
+
+ EXAMPLE THREE:
+ CENTER ALIGN
+
+ *********************************************** */
+
+ var hbl3 = new qx.ui.layout.HorizontalBoxLayout;
+
+ hbl3.setTop(228);
+ hbl3.setLeft(20);
+ hbl3.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ hbl3.setHeight("auto");
+ hbl3.setRight(335);
+
+ hbl3.setSpacing(4);
+ hbl3.setPadding(8);
+
+ hbl3.setHorizontalChildrenAlign("center");
+
+
+
+ var w3_1 = new qx.ui.layout.CanvasLayout;
+ w3_1.setWidth(25);
+ w3_1.setHeight(25);
+ w3_1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w3_1.setBackgroundColor(cl_white);
+ // w3_1.setMaxHeight(40);
+
+ var w3_2 = new qx.ui.layout.CanvasLayout;
+ w3_2.setWidth(25);
+ w3_2.setHeight(25);
+ w3_2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w3_2.setBackgroundColor(cl_blue);
+ w3_2.setBottom(10);
+
+ var w3_3 = new qx.ui.layout.CanvasLayout;
+ w3_3.setWidth(25);
+ w3_3.setHeight("100%");
+ w3_3.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w3_3.setBackgroundColor(cl_yellow);
+
+ var w3_4 = new qx.ui.layout.CanvasLayout;
+ w3_4.setWidth(25);
+ w3_4.setHeight(25);
+ w3_4.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w3_4.setBackgroundColor(cl_green);
+
+ var w3_5 = new qx.ui.layout.CanvasLayout;
+ w3_5.setWidth("15%");
+ // w3_5.setHeight(25);
+ w3_5.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w3_5.setBackgroundColor(cl_orange);
+
+ var w3_6 = new qx.ui.layout.CanvasLayout;
+ w3_6.setWidth(25);
+ w3_6.setHeight(25);
+ w3_6.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w3_6.setBackgroundColor(cl_purple);
+ w3_6.setTop(15);
+ w3_6.setLeft(-25);
+
+ var w3_7 = new qx.ui.basic.Image("icon/32/apps/accessories-clock.png");
+
+ var w3_8 = new qx.ui.basic.Image("icon/32/actions/format-color.png");
+
+ var w3_9 = new qx.ui.layout.CanvasLayout;
+ w3_9.setWidth(25);
+ w3_9.setHeight(25);
+ w3_9.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w3_9.setBackgroundColor(cl_aqua);
+
+ var w3_10 = new qx.ui.layout.CanvasLayout;
+ w3_10.setWidth(25);
+ w3_10.setHeight(25);
+ w3_10.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w3_10.setBackgroundColor(cl_fuchsia);
+
+
+ var hbl3_click = 0;
+ hbl3.addEventListener("click", function(e)
+ {
+ if (e.getTarget()!=this) {
+ return;
+ };
+
+ switch(hbl3_click)
+ {
+ case 0:
+ this.setHeight(30);
+ break;
+
+ case 1:
+ this.setHeight(80);
+ break;
+
+ case 2:
+ this.setHeight("auto");
+ break;
+
+ case 3:
+ this.setWidth(200);
+ break;
+
+ case 4:
+ this.setWidth(null);
+ this.setRight(335);
+ hbl3_click = 0;
+ return;
+ };
+
+ hbl3_click++;
+ });
+
+ w3_1.addEventListener("click", function(e)
+ {
+ if (this.getWidth() == 25)
+ {
+ this.setWidth(65);
+ this.setHeight(65);
+ this.setBorder(new qx.renderer.border.Border(6, "double", "black"));
+ }
+ else
+ {
+ this.setWidth(25);
+ this.setHeight(25);
+ this.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ };
+ });
+
+ w3_2.addEventListener("click", function(e) {
+ this.getMarginRight() == 0 ? this.setMarginRight(10) : this.setMarginRight(0);
+ });
+
+ w3_3.addEventListener("click", function(e) {
+ this.getMinWidth() == -Infinity ? this.setMinWidth(100) : this.setMinWidth(-Infinity);
+ });
+
+ w3_4.addEventListener("click", function(e) {
+ this.getWidth() == 25 ? this.setWidth(50) : this.setWidth(25);
+ });
+
+ w3_5.addEventListener("click", function(e) {
+ this.getWidth() == "15%" ? this.setWidth("30%") : this.setWidth("15%");
+ });
+
+ w3_6.addEventListener("click", function(e) {
+ this.getLeft() == -25 ? this.setLeft(25) : this.setLeft(-25);
+ });
+
+ w3_7.addEventListener("click", function(e) {
+ this.getSource() == "icon/32/apps/accessories-clock.png" ? this.setSource("icon/64/apps/accessories-clock.png") : this.setSource("icon/32/apps/accessories-clock.png");
+ });
+
+ w3_8.addEventListener("click", function(e) {
+ this.getSource() == "icon/32/actions/format-color.png" ? this.setSource("icon/16/actions/format-color.png") : this.setSource("icon/32/actions/format-color.png");
+ });
+
+ w3_9.addEventListener("click", function(e)
+ {
+ if (this.getTop() == null)
+ {
+ this.setTop(20);
+ this.setLeft(-10);
+ }
+ else
+ {
+ this.setTop(null);
+ this.setLeft(null);
+ };
+ });
+
+ w3_10.addEventListener("click", function(e)
+ {
+ if (this.getWidth() == 25)
+ {
+ this.setWidth(10);
+ this.setHeight(10);
+ this.setLeft(-5);
+ this.setBottom(15);
+ }
+ else
+ {
+ this.setWidth(25);
+ this.setHeight(25);
+ this.setLeft(null);
+ this.setBottom(null);
+ };
+ });
+
+
+
+ hbl3.add(w3_1, w3_2, w3_3, w3_4, w3_5, w3_6, w3_7, w3_8, w3_9, w3_10);
+ d.add(hbl3);
+
+
+
+
+ /* ***********************************************
+
+ EXAMPLE FOUR:
+ LEFT ALIGN, REVERTED CHILDREN ORDER
+
+ *********************************************** */
+
+ var hbl4 = new qx.ui.layout.HorizontalBoxLayout;
+
+ hbl4.setTop(318);
+ hbl4.setLeft(20);
+ hbl4.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ hbl4.setWidth(null);
+ hbl4.setRight(335);
+
+ hbl4.setSpacing(4);
+ hbl4.setPadding(8);
+ hbl4.setReverseChildrenOrder(true);
+ hbl4.setVerticalChildrenAlign("bottom");
+
+ hbl4.setHeight(80);
+
+
+
+ var w4_1 = new qx.ui.layout.CanvasLayout;
+ w4_1.setWidth(25);
+ w4_1.setHeight(25);
+ w4_1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w4_1.setBackgroundColor(cl_white);
+ // w4_1.setMaxHeight(40);
+
+ var w4_2 = new qx.ui.layout.CanvasLayout;
+ w4_2.setWidth(25);
+ w4_2.setHeight(25);
+ w4_2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w4_2.setBackgroundColor(cl_blue);
+ w4_2.setBottom(10);
+
+ var w4_3 = new qx.ui.layout.CanvasLayout;
+ w4_3.setWidth(25);
+ w4_3.setHeight("100%");
+ w4_3.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w4_3.setBackgroundColor(cl_yellow);
+
+ var w4_4 = new qx.ui.layout.CanvasLayout;
+ w4_4.setWidth(25);
+ w4_4.setHeight(25);
+ w4_4.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w4_4.setBackgroundColor(cl_green);
+
+ var w4_5 = new qx.ui.layout.CanvasLayout;
+ w4_5.setWidth("15%");
+ // w4_5.setHeight(25);
+ w4_5.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w4_5.setBackgroundColor(cl_orange);
+
+ var w4_6 = new qx.ui.layout.CanvasLayout;
+ w4_6.setWidth(25);
+ w4_6.setHeight(25);
+ w4_6.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w4_6.setBackgroundColor(cl_purple);
+ w4_6.setTop(15);
+ w4_6.setLeft(-25);
+
+ var w4_7 = new qx.ui.basic.Image("icon/32/apps/accessories-clock.png");
+
+ var w4_8 = new qx.ui.basic.Image("icon/32/actions/format-color.png");
+
+ var w4_9 = new qx.ui.layout.CanvasLayout;
+ w4_9.setWidth(25);
+ w4_9.setHeight(25);
+ w4_9.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w4_9.setBackgroundColor(cl_aqua);
+
+ var w4_10 = new qx.ui.layout.CanvasLayout;
+ w4_10.setWidth(25);
+ w4_10.setHeight(25);
+ w4_10.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w4_10.setBackgroundColor(cl_fuchsia);
+
+
+ var hbl4_click = 0;
+ hbl4.addEventListener("click", function(e)
+ {
+ if (e.getTarget()!=this) {
+ return;
+ };
+
+ switch(hbl4_click)
+ {
+ case 0:
+ this.setHeight(30);
+ break;
+
+ case 1:
+ this.setHeight("auto");
+ break;
+
+ case 2:
+ this.setHeight(80);
+ break;
+
+ case 3:
+ this.setWidth(200);
+ break;
+
+ case 4:
+ this.setWidth(null);
+ this.setRight(335);
+ hbl4_click = 0;
+ return;
+ };
+
+ hbl4_click++;
+ });
+
+ w4_1.addEventListener("click", function(e)
+ {
+ if (this.getWidth() == 25)
+ {
+ this.setWidth(65);
+ this.setHeight(65);
+ this.setBorder(new qx.renderer.border.Border(6, "double", "black"));
+ }
+ else
+ {
+ this.setWidth(25);
+ this.setHeight(25);
+ this.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ };
+ });
+
+ w4_2.addEventListener("click", function(e) {
+ this.getMarginRight() == 0 ? this.setMarginRight(10) : this.setMarginRight(0);
+ });
+
+ w4_3.addEventListener("click", function(e) {
+ this.getMinWidth() == -Infinity ? this.setMinWidth(100) : this.setMinWidth(-Infinity);
+ });
+
+ w4_4.addEventListener("click", function(e) {
+ this.getWidth() == 25 ? this.setWidth(50) : this.setWidth(25);
+ });
+
+ w4_5.addEventListener("click", function(e) {
+ this.getWidth() == "15%" ? this.setWidth("30%") : this.setWidth("15%");
+ });
+
+ w4_6.addEventListener("click", function(e) {
+ this.getLeft() == -25 ? this.setLeft(25) : this.setLeft(-25);
+ });
+
+ w4_7.addEventListener("click", function(e) {
+ this.getSource() == "icon/32/apps/accessories-clock.png" ? this.setSource("icon/64/apps/accessories-clock.png") : this.setSource("icon/32/apps/accessories-clock.png");
+ });
+
+ w4_8.addEventListener("click", function(e) {
+ this.getSource() == "icon/32/actions/format-color.png" ? this.setSource("icon/16/actions/format-color.png") : this.setSource("icon/32/actions/format-color.png");
+ });
+
+ w4_9.addEventListener("click", function(e)
+ {
+ if (this.getTop() == null)
+ {
+ this.setTop(20);
+ this.setLeft(-10);
+ }
+ else
+ {
+ this.setTop(null);
+ this.setLeft(null);
+ };
+ });
+
+ w4_10.addEventListener("click", function(e)
+ {
+ if (this.getWidth() == 25)
+ {
+ this.setWidth(10);
+ this.setHeight(10);
+ this.setLeft(-5);
+ this.setBottom(15);
+ }
+ else
+ {
+ this.setWidth(25);
+ this.setHeight(25);
+ this.setLeft(null);
+ this.setBottom(null);
+ };
+ });
+
+
+
+ hbl4.add(w4_1, w4_2, w4_3, w4_4, w4_5, w4_6, w4_7, w4_8, w4_9, w4_10);
+ d.add(hbl4);
+
+
+
+
+ /* ***********************************************
+
+ EXAMPLE FIVE:
+ RIGHT ALIGN, REVERTED CHILDREN ORDER
+
+ *********************************************** */
+
+ var hbl5 = new qx.ui.layout.HorizontalBoxLayout;
+
+ hbl5.setTop(408);
+ hbl5.setLeft(20);
+ hbl5.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ hbl5.setWidth(null);
+ hbl5.setRight(335);
+
+ hbl5.setSpacing(4);
+ hbl5.setPadding(8);
+
+ hbl5.setHorizontalChildrenAlign("right");
+ hbl5.setReverseChildrenOrder(true);
+ hbl5.setVerticalChildrenAlign("middle");
+
+ hbl5.setHeight(80);
+
+
+ var w5_1 = new qx.ui.layout.CanvasLayout;
+ w5_1.setWidth(25);
+ w5_1.setHeight(25);
+ w5_1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w5_1.setBackgroundColor(cl_white);
+ // w5_1.setMaxHeight(40);
+
+ var w5_2 = new qx.ui.layout.CanvasLayout;
+ w5_2.setWidth(25);
+ w5_2.setHeight(25);
+ w5_2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w5_2.setBackgroundColor(cl_blue);
+ w5_2.setBottom(10);
+
+ var w5_3 = new qx.ui.layout.CanvasLayout;
+ w5_3.setWidth(25);
+ w5_3.setHeight("100%");
+ w5_3.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w5_3.setBackgroundColor(cl_yellow);
+
+ var w5_4 = new qx.ui.layout.CanvasLayout;
+ w5_4.setWidth(25);
+ w5_4.setHeight(25);
+ w5_4.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w5_4.setBackgroundColor(cl_green);
+
+ var w5_5 = new qx.ui.layout.CanvasLayout;
+ w5_5.setWidth("15%");
+ // w5_5.setHeight(25);
+ w5_5.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w5_5.setBackgroundColor(cl_orange);
+
+ var w5_6 = new qx.ui.layout.CanvasLayout;
+ w5_6.setWidth(25);
+ w5_6.setHeight(25);
+ w5_6.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w5_6.setBackgroundColor(cl_purple);
+ w5_6.setTop(15);
+ w5_6.setLeft(-25);
+
+ var w5_7 = new qx.ui.basic.Image("icon/32/apps/accessories-clock.png");
+
+ var w5_8 = new qx.ui.basic.Image("icon/32/actions/format-color.png");
+
+ var w5_9 = new qx.ui.layout.CanvasLayout;
+ w5_9.setWidth(25);
+ w5_9.setHeight(25);
+ w5_9.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w5_9.setBackgroundColor(cl_aqua);
+
+ var w5_10 = new qx.ui.layout.CanvasLayout;
+ w5_10.setWidth(25);
+ w5_10.setHeight(25);
+ w5_10.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w5_10.setBackgroundColor(cl_fuchsia);
+
+
+ var hbl5_click = 0;
+ hbl5.addEventListener("click", function(e)
+ {
+ if (e.getTarget()!=this) {
+ return;
+ };
+
+ switch(hbl5_click)
+ {
+ case 0:
+ this.setHeight(30);
+ break;
+
+ case 1:
+ this.setHeight("auto");
+ break;
+
+ case 2:
+ this.setHeight(80);
+ break;
+
+ case 3:
+ this.setWidth(200);
+ break;
+
+ case 4:
+ this.setWidth(null);
+ this.setRight(335);
+ hbl5_click = 0;
+ return;
+ };
+
+ hbl5_click++;
+ });
+
+ w5_1.addEventListener("click", function(e)
+ {
+ if (this.getWidth() == 25)
+ {
+ this.setWidth(65);
+ this.setHeight(65);
+ this.setBorder(new qx.renderer.border.Border(6, "double", "black"));
+ }
+ else
+ {
+ this.setWidth(25);
+ this.setHeight(25);
+ this.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ };
+ });
+
+ w5_2.addEventListener("click", function(e) {
+ this.getMarginRight() == 0 ? this.setMarginRight(10) : this.setMarginRight(0);
+ });
+
+ w5_3.addEventListener("click", function(e) {
+ this.getMinWidth() == -Infinity ? this.setMinWidth(100) : this.setMinWidth(-Infinity);
+ });
+
+ w5_4.addEventListener("click", function(e) {
+ this.getWidth() == 25 ? this.setWidth(50) : this.setWidth(25);
+ });
+
+ w5_5.addEventListener("click", function(e) {
+ this.getWidth() == "15%" ? this.setWidth("30%") : this.setWidth("15%");
+ });
+
+ w5_6.addEventListener("click", function(e) {
+ this.getLeft() == -25 ? this.setLeft(25) : this.setLeft(-25);
+ });
+
+ w5_7.addEventListener("click", function(e) {
+ this.getSource() == "icon/32/apps/accessories-clock.png" ? this.setSource("icon/64/apps/accessories-clock.png") : this.setSource("icon/32/apps/accessories-clock.png");
+ });
+
+ w5_8.addEventListener("click", function(e) {
+ this.getSource() == "icon/32/actions/format-color.png" ? this.setSource("icon/16/actions/format-color.png") : this.setSource("icon/32/actions/format-color.png");
+ });
+
+ w5_9.addEventListener("click", function(e)
+ {
+ if (this.getTop() == null)
+ {
+ this.setTop(20);
+ this.setLeft(-10);
+ }
+ else
+ {
+ this.setTop(null);
+ this.setLeft(null);
+ };
+ });
+
+ w5_10.addEventListener("click", function(e)
+ {
+ if (this.getWidth() == 25)
+ {
+ this.setWidth(10);
+ this.setHeight(10);
+ this.setLeft(-5);
+ this.setBottom(15);
+ }
+ else
+ {
+ this.setWidth(25);
+ this.setHeight(25);
+ this.setLeft(null);
+ this.setBottom(null);
+ };
+ });
+
+
+
+ hbl5.add(w5_1, w5_2, w5_3, w5_4, w5_5, w5_6, w5_7, w5_8, w5_9, w5_10);
+ d.add(hbl5);
+
+
+
+
+
+
+
+
+ /* ***********************************************
+
+ EXAMPLE SIX:
+ CENTER ALIGN, REVERTED CHILDREN ORDER
+
+ *********************************************** */
+
+ var hbl6 = new qx.ui.layout.HorizontalBoxLayout;
+
+ hbl6.setTop(498);
+ hbl6.setLeft(20);
+ hbl6.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ hbl6.setWidth(null);
+ hbl6.setRight(335);
+
+ hbl6.setSpacing(4);
+ hbl6.setPadding(8);
+
+ hbl6.setHorizontalChildrenAlign("center");
+ hbl6.setReverseChildrenOrder(true);
+ hbl6.setHeight(80);
+
+
+ var w6_1 = new qx.ui.layout.CanvasLayout;
+ w6_1.setWidth(25);
+ w6_1.setHeight(25);
+ w6_1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w6_1.setBackgroundColor(cl_white);
+ // w6_1.setMaxHeight(40);
+
+ var w6_2 = new qx.ui.layout.CanvasLayout;
+ w6_2.setWidth(25);
+ w6_2.setHeight(25);
+ w6_2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w6_2.setBackgroundColor(cl_blue);
+ w6_2.setBottom(10);
+
+ var w6_3 = new qx.ui.layout.CanvasLayout;
+ w6_3.setWidth(25);
+ w6_3.setHeight("100%");
+ w6_3.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w6_3.setBackgroundColor(cl_yellow);
+
+ var w6_4 = new qx.ui.layout.CanvasLayout;
+ w6_4.setWidth(25);
+ w6_4.setHeight(25);
+ w6_4.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w6_4.setBackgroundColor(cl_green);
+
+ var w6_5 = new qx.ui.layout.CanvasLayout;
+ w6_5.setWidth("15%");
+ // w6_5.setHeight(25);
+ w6_5.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w6_5.setBackgroundColor(cl_orange);
+
+ var w6_6 = new qx.ui.layout.CanvasLayout;
+ w6_6.setWidth(25);
+ w6_6.setHeight(25);
+ w6_6.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w6_6.setBackgroundColor(cl_purple);
+ w6_6.setTop(15);
+ w6_6.setLeft(-25);
+
+ var w6_7 = new qx.ui.basic.Image("icon/32/apps/accessories-clock.png");
+
+ var w6_8 = new qx.ui.basic.Image("icon/32/actions/format-color.png");
+
+ var w6_9 = new qx.ui.layout.CanvasLayout;
+ w6_9.setWidth(25);
+ w6_9.setHeight(25);
+ w6_9.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w6_9.setBackgroundColor(cl_aqua);
+
+ var w6_10 = new qx.ui.layout.CanvasLayout;
+ w6_10.setWidth(25);
+ w6_10.setHeight(25);
+ w6_10.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w6_10.setBackgroundColor(cl_fuchsia);
+
+
+ var hbl6_click = 0;
+ hbl6.addEventListener("click", function(e)
+ {
+ if (e.getTarget()!=this) {
+ return;
+ };
+
+ switch(hbl6_click)
+ {
+ case 0:
+ this.setHeight(30);
+ break;
+
+ case 1:
+ this.setHeight("auto");
+ break;
+
+ case 2:
+ this.setHeight(80);
+ break;
+
+ case 3:
+ this.setWidth(200);
+ break;
+
+ case 4:
+ this.setWidth(null);
+ this.setRight(335);
+ hbl6_click = 0;
+ return;
+ };
+
+ hbl6_click++;
+ });
+
+ w6_1.addEventListener("click", function(e)
+ {
+ if (this.getWidth() == 25)
+ {
+ this.setWidth(65);
+ this.setHeight(65);
+ this.setBorder(new qx.renderer.border.Border(6, "double", "black"));
+ }
+ else
+ {
+ this.setWidth(25);
+ this.setHeight(25);
+ this.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ };
+ });
+
+ w6_2.addEventListener("click", function(e) {
+ this.getMarginRight() == 0 ? this.setMarginRight(10) : this.setMarginRight(0);
+ });
+
+ w6_3.addEventListener("click", function(e) {
+ this.getMinWidth() == -Infinity ? this.setMinWidth(100) : this.setMinWidth(-Infinity);
+ });
+
+ w6_4.addEventListener("click", function(e) {
+ this.getWidth() == 25 ? this.setWidth(50) : this.setWidth(25);
+ });
+
+ w6_5.addEventListener("click", function(e) {
+ this.getWidth() == "15%" ? this.setWidth("30%") : this.setWidth("15%");
+ });
+
+ w6_6.addEventListener("click", function(e) {
+ this.getLeft() == -25 ? this.setLeft(25) : this.setLeft(-25);
+ });
+
+ w6_7.addEventListener("click", function(e) {
+ this.getSource() == "icon/32/apps/accessories-clock.png" ? this.setSource("icon/64/apps/accessories-clock.png") : this.setSource("icon/32/apps/accessories-clock.png");
+ });
+
+ w6_8.addEventListener("click", function(e) {
+ this.getSource() == "icon/32/actions/format-color.png" ? this.setSource("icon/16/actions/format-color.png") : this.setSource("icon/32/actions/format-color.png");
+ });
+
+ w6_9.addEventListener("click", function(e)
+ {
+ if (this.getTop() == null)
+ {
+ this.setTop(20);
+ this.setLeft(-10);
+ }
+ else
+ {
+ this.setTop(null);
+ this.setLeft(null);
+ };
+ });
+
+ w6_10.addEventListener("click", function(e)
+ {
+ if (this.getWidth() == 25)
+ {
+ this.setWidth(10);
+ this.setHeight(10);
+ this.setLeft(-5);
+ this.setBottom(15);
+ }
+ else
+ {
+ this.setWidth(25);
+ this.setHeight(25);
+ this.setLeft(null);
+ this.setBottom(null);
+ };
+ });
+
+
+
+ hbl6.add(w6_1, w6_2, w6_3, w6_4, w6_5, w6_6, w6_7, w6_8, w6_9, w6_10);
+ d.add(hbl6);
+
+
+
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/HorizontalBoxLayout_3.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/HorizontalBoxLayout_3.html
new file mode 100644
index 0000000000..92579e35a1
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/HorizontalBoxLayout_3.html
@@ -0,0 +1,594 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ Tests for the new implementation of the qx.ui.layout.HorizontalBoxLayout widget.<br/>
+ <br/>
+ 1. Simple testing, one static and one flex child<br/>
+ 2. Two flex children with the same priority<br/>
+ 3. The same as #2, but the second has the doubled priority compared to the first<br/>
+ <br/>
+
+ 4. The same as #3, but now the second child has a max-width of 50px<br/>
+ 5. The same as #4, but now with enabled "advancedFlexAllocation"<br/>
+ <br/>
+
+ 6. The same as #3, but now the second has a min width of 500px<br/>
+ 7. The same as #6, but now with enabled "advancedFlexAllocation"<br/>
+ <br/>
+
+ 8. Three children with the priorities: 1, 2 and 3. The second has a maxWidth of 50px<br/>
+ 9. The same as #8, but now with enabled "advancedFlexAllocation"<br/>
+ <br/>
+
+ 10. Three children with the priorities: 1, 2 and 3. Added a few mouse actions.<br/>
+ 11. Three children with the priorities: 1, a static width of 80px and 3.<br/>
+ 12. The same as #11, but configured as 'auto' width.<br/>
+ <br/>
+
+ 13. Test for more complex child widgets. Seems to work without problems.
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+
+ /* ***********************************************
+
+ EXAMPLE 1:
+
+ *********************************************** */
+
+ var te1 = new qx.ui.basic.Label("#1");
+ te1.setLocation(20, 48);
+ d.add(te1);
+
+ var hbl1 = new qx.ui.layout.HorizontalBoxLayout;
+ hbl1.setLeft(50);
+ hbl1.setTop(48);
+ hbl1.setRight(335);
+ hbl1.setWidth(null);
+ hbl1.setHeight("auto");
+ hbl1.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ hbl1.setSpacing(4);
+ hbl1.setPadding(2);
+ d.add(hbl1);
+
+ var t1_1 = new qx.ui.basic.Terminator;
+ t1_1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t1_1.setWidth(20);
+ t1_1.setHeight(10);
+ t1_1.setBackgroundColor("green");
+ hbl1.add(t1_1);
+
+ t1_1.addEventListener("click", function() {
+ this.setWidth(this.getWidth() == 20 ? 100 : 20);
+ });
+
+ var t1_2 = new qx.ui.basic.Terminator;
+ t1_2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t1_2.setWidth("1*");
+ t1_2.setHeight(10);
+ t1_2.setBackgroundColor("blue");
+ hbl1.add(t1_2);
+
+
+
+
+ /* ***********************************************
+
+ EXAMPLE 2:
+
+ *********************************************** */
+
+ var te2 = new qx.ui.basic.Label("#2");
+ te2.setLocation(20, 68);
+ d.add(te2);
+
+ var hbl2 = new qx.ui.layout.HorizontalBoxLayout;
+ hbl2.setLeft(50);
+ hbl2.setTop(68);
+ hbl2.setRight(335);
+ hbl2.setWidth(null);
+ hbl2.setHeight("auto");
+ hbl2.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ hbl2.setSpacing(4);
+ hbl2.setPadding(2);
+ d.add(hbl2);
+
+ var t2_1 = new qx.ui.basic.Terminator;
+ t2_1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t2_1.setWidth("1*");
+ t2_1.setHeight(10);
+ t2_1.setBackgroundColor("green");
+ hbl2.add(t2_1);
+
+ var t2_2 = new qx.ui.basic.Terminator;
+ t2_2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t2_2.setWidth("1*");
+ t2_2.setHeight(10);
+ t2_2.setBackgroundColor("blue");
+ hbl2.add(t2_2);
+
+
+
+
+
+
+ /* ***********************************************
+
+ EXAMPLE 3:
+
+ *********************************************** */
+
+ var te3 = new qx.ui.basic.Label("#3");
+ te3.setLocation(20, 88);
+ d.add(te3);
+
+ var hbl3 = new qx.ui.layout.HorizontalBoxLayout;
+ hbl3.setLeft(50);
+ hbl3.setTop(88);
+ hbl3.setRight(335);
+ hbl3.setWidth(null);
+ hbl3.setHeight("auto");
+ hbl3.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ hbl3.setSpacing(4);
+ hbl3.setPadding(2);
+ d.add(hbl3);
+
+ var t3_1 = new qx.ui.basic.Terminator;
+ t3_1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t3_1.setWidth("1*");
+ t3_1.setHeight(10);
+ t3_1.setBackgroundColor("green");
+ hbl3.add(t3_1);
+
+ var t3_2 = new qx.ui.basic.Terminator;
+ t3_2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t3_2.setWidth("2*");
+ t3_2.setHeight(10);
+ t3_2.setBackgroundColor("blue");
+ hbl3.add(t3_2);
+
+
+
+
+ /* ***********************************************
+
+ EXAMPLE 4:
+
+ *********************************************** */
+
+ var te4 = new qx.ui.basic.Label("#4");
+ te4.setLocation(20, 128);
+ d.add(te4);
+
+ var hbl4 = new qx.ui.layout.HorizontalBoxLayout;
+ hbl4.setLeft(50);
+ hbl4.setTop(128);
+ hbl4.setRight(335);
+ hbl4.setWidth(null);
+ hbl4.setHeight("auto");
+ hbl4.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ hbl4.setSpacing(4);
+ hbl4.setPadding(2);
+ d.add(hbl4);
+
+ var t4_1 = new qx.ui.basic.Terminator;
+ t4_1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t4_1.setWidth("1*");
+ t4_1.setHeight(10);
+ t4_1.setBackgroundColor("green");
+ hbl4.add(t4_1);
+
+ var t4_2 = new qx.ui.basic.Terminator;
+ t4_2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t4_2.setWidth("2*");
+ t4_2.setHeight(10);
+ t4_2.setMaxWidth(50);
+ t4_2.setBackgroundColor("blue");
+ hbl4.add(t4_2);
+
+
+
+
+ /* ***********************************************
+
+ EXAMPLE 5:
+
+ *********************************************** */
+
+ var te5 = new qx.ui.basic.Label("#5");
+ te5.setLocation(20, 148);
+ d.add(te5);
+
+ var hbl5 = new qx.ui.layout.HorizontalBoxLayout;
+ hbl5.setLeft(50);
+ hbl5.setTop(148);
+ hbl5.setRight(335);
+ hbl5.setWidth(null);
+ hbl5.setHeight("auto");
+ hbl5.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ hbl5.setSpacing(4);
+ hbl5.setPadding(2);
+ hbl5.setUseAdvancedFlexAllocation(true);
+ d.add(hbl5);
+
+ var t5_1 = new qx.ui.basic.Terminator;
+ t5_1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t5_1.setWidth("1*");
+ t5_1.setHeight(10);
+ t5_1.setBackgroundColor("green");
+ hbl5.add(t5_1);
+
+ var t5_2 = new qx.ui.basic.Terminator;
+ t5_2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t5_2.setWidth("2*");
+ t5_2.setHeight(10);
+ t5_2.setMaxWidth(50);
+ t5_2.setBackgroundColor("blue");
+ hbl5.add(t5_2);
+
+
+
+
+ /* ***********************************************
+
+ EXAMPLE 6:
+
+ *********************************************** */
+
+ var te6 = new qx.ui.basic.Label("#6");
+ te6.setLocation(20, 188);
+ d.add(te6);
+
+ var hbl6 = new qx.ui.layout.HorizontalBoxLayout;
+ hbl6.setLeft(50);
+ hbl6.setTop(188);
+ hbl6.setRight(335);
+ hbl6.setWidth(null);
+ hbl6.setHeight("auto");
+ hbl6.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ hbl6.setSpacing(4);
+ hbl6.setPadding(2);
+ d.add(hbl6);
+
+ var t6_1 = new qx.ui.basic.Terminator;
+ t6_1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t6_1.setWidth("1*");
+ t6_1.setHeight(10);
+ t6_1.setBackgroundColor("green");
+ hbl6.add(t6_1);
+
+ var t6_2 = new qx.ui.basic.Terminator;
+ t6_2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t6_2.setWidth("2*");
+ t6_2.setHeight(10);
+ t6_2.setMinWidth(500);
+ t6_2.setBackgroundColor("blue");
+ hbl6.add(t6_2);
+
+
+
+
+ /* ***********************************************
+
+ EXAMPLE 7:
+
+ *********************************************** */
+
+ var te7 = new qx.ui.basic.Label("#7");
+ te7.setLocation(20, 208);
+ d.add(te7);
+
+ var hbl7 = new qx.ui.layout.HorizontalBoxLayout;
+ hbl7.setLeft(50);
+ hbl7.setTop(208);
+ hbl7.setRight(335);
+ hbl7.setWidth(null);
+ hbl7.setHeight("auto");
+ hbl7.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ hbl7.setSpacing(4);
+ hbl7.setPadding(2);
+ hbl7.setUseAdvancedFlexAllocation(true);
+ d.add(hbl7);
+
+ var t7_1 = new qx.ui.basic.Terminator;
+ t7_1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t7_1.setWidth("1*");
+ t7_1.setHeight(10);
+ t7_1.setBackgroundColor("green");
+ hbl7.add(t7_1);
+
+ var t7_2 = new qx.ui.basic.Terminator;
+ t7_2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t7_2.setWidth("2*");
+ t7_2.setHeight(10);
+ t7_2.setMinWidth(500);
+ t7_2.setBackgroundColor("blue");
+ hbl7.add(t7_2);
+
+
+
+
+ /* ***********************************************
+
+ EXAMPLE 8:
+
+ *********************************************** */
+
+ var te8 = new qx.ui.basic.Label("#8");
+ te8.setLocation(20, 248);
+ d.add(te8);
+
+ var hbl8 = new qx.ui.layout.HorizontalBoxLayout;
+ hbl8.setLeft(50);
+ hbl8.setTop(248);
+ hbl8.setRight(335);
+ hbl8.setWidth(null);
+ hbl8.setHeight("auto");
+ hbl8.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ hbl8.setSpacing(4);
+ hbl8.setPadding(2);
+ d.add(hbl8);
+
+ var t8_1 = new qx.ui.basic.Terminator;
+ t8_1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t8_1.setWidth("1*");
+ t8_1.setHeight(10);
+ t8_1.setBackgroundColor("green");
+ hbl8.add(t8_1);
+
+ var t8_2 = new qx.ui.basic.Terminator;
+ t8_2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t8_2.setWidth("2*");
+ t8_2.setHeight(10);
+ t8_2.setBackgroundColor("blue");
+ t8_2.setMaxWidth(50);
+ hbl8.add(t8_2);
+
+ var t8_3 = new qx.ui.basic.Terminator;
+ t8_3.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t8_3.setWidth("3*");
+ t8_3.setHeight(10);
+ t8_3.setBackgroundColor("red");
+ hbl8.add(t8_3);
+
+
+
+ /* ***********************************************
+
+ EXAMPLE 9:
+
+ *********************************************** */
+
+ var te9 = new qx.ui.basic.Label("#9");
+ te9.setLocation(20, 268);
+ d.add(te9);
+
+ var hbl9 = new qx.ui.layout.HorizontalBoxLayout;
+ hbl9.setLeft(50);
+ hbl9.setTop(268);
+ hbl9.setRight(335);
+ hbl9.setWidth(null);
+ hbl9.setHeight("auto");
+ hbl9.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ hbl9.setSpacing(4);
+ hbl9.setPadding(2);
+ hbl9.setUseAdvancedFlexAllocation(true);
+ d.add(hbl9);
+
+ var t9_1 = new qx.ui.basic.Terminator;
+ t9_1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t9_1.setWidth("1*");
+ t9_1.setHeight(10);
+ t9_1.setBackgroundColor("green");
+ hbl9.add(t9_1);
+
+ var t9_2 = new qx.ui.basic.Terminator;
+ t9_2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t9_2.setWidth("2*");
+ t9_2.setHeight(10);
+ t9_2.setBackgroundColor("blue");
+ t9_2.setMaxWidth(50);
+ hbl9.add(t9_2);
+
+ var t9_3 = new qx.ui.basic.Terminator;
+ t9_3.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t9_3.setWidth("3*");
+ t9_3.setHeight(10);
+ t9_3.setBackgroundColor("red");
+ hbl9.add(t9_3);
+
+
+
+
+ /* ***********************************************
+
+ EXAMPLE 10:
+
+ *********************************************** */
+
+ var te10 = new qx.ui.basic.Label("#10");
+ te10.setLocation(20, 308);
+ d.add(te10);
+
+ var hbl10 = new qx.ui.layout.HorizontalBoxLayout;
+ hbl10.setLeft(50);
+ hbl10.setTop(308);
+ hbl10.setRight(335);
+ hbl10.setWidth(null);
+ hbl10.setHeight("auto");
+ hbl10.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ hbl10.setSpacing(4);
+ hbl10.setPadding(2);
+ hbl10.setUseAdvancedFlexAllocation(true);
+ d.add(hbl10);
+
+ var t10_1 = new qx.ui.basic.Terminator;
+ t10_1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t10_1.setWidth("1*");
+ t10_1.setHeight(10);
+ t10_1.setBackgroundColor("green");
+ t10_1.addEventListener("click", function(e) { this.setWidth(this.getWidth() == "1*" ? "4*" : "1*"); });
+ hbl10.add(t10_1);
+
+ var t10_2 = new qx.ui.basic.Terminator;
+ t10_2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t10_2.setWidth("2*");
+ t10_2.setHeight(10);
+ t10_2.setBackgroundColor("blue");
+ t10_2.addEventListener("click", function(e) { this.setWidth(this.getWidth() == "2*" ? "1*" : "2*"); });
+ hbl10.add(t10_2);
+
+ var t10_3 = new qx.ui.basic.Terminator;
+ t10_3.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t10_3.setWidth("3*");
+ t10_3.setHeight(10);
+ t10_3.setBackgroundColor("red");
+ t10_3.addEventListener("click", function(e) { this.setWidth(this.getWidth() == "3*" ? "6*" : "3*"); });
+ hbl10.add(t10_3);
+
+
+
+
+ /* ***********************************************
+
+ EXAMPLE 11:
+
+ *********************************************** */
+
+ var te11 = new qx.ui.basic.Label("#11");
+ te11.setLocation(20, 328);
+ d.add(te11);
+
+ var hbl11 = new qx.ui.layout.HorizontalBoxLayout;
+ hbl11.setLeft(50);
+ hbl11.setTop(328);
+ hbl11.setRight(335);
+ hbl11.setWidth(null);
+ hbl11.setHeight("auto");
+ hbl11.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ hbl11.setSpacing(4);
+ hbl11.setPadding(2);
+ d.add(hbl11);
+
+ var t11_1 = new qx.ui.basic.Terminator;
+ t11_1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t11_1.setWidth("1*");
+ t11_1.setHeight(10);
+ t11_1.setBackgroundColor("green");
+ hbl11.add(t11_1);
+
+ var t11_2 = new qx.ui.basic.Terminator;
+ t11_2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t11_2.setWidth(80);
+ t11_2.setHeight(10);
+ t11_2.setBackgroundColor("blue");
+ hbl11.add(t11_2);
+
+ var t11_3 = new qx.ui.basic.Terminator;
+ t11_3.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t11_3.setWidth("3*");
+ t11_3.setHeight(10);
+ t11_3.setBackgroundColor("red");
+ hbl11.add(t11_3);
+
+
+
+
+ /* ***********************************************
+
+ EXAMPLE 12:
+
+ *********************************************** */
+
+ var te12 = new qx.ui.basic.Label("#12");
+ te12.setLocation(20, 348);
+ d.add(te12);
+
+ var hbl12 = new qx.ui.layout.HorizontalBoxLayout;
+ hbl12.setLeft(50);
+ hbl12.setTop(348);
+ hbl12.setHeight("auto");
+ hbl12.setWidth("auto");
+ hbl12.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ hbl12.setSpacing(4);
+ hbl12.setPadding(2);
+ d.add(hbl12);
+
+ var t12_1 = new qx.ui.basic.Terminator;
+ t12_1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t12_1.setWidth("1*");
+ t12_1.setHeight(10);
+ t12_1.setBackgroundColor("green");
+ hbl12.add(t12_1);
+
+ var t12_2 = new qx.ui.basic.Terminator;
+ t12_2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t12_2.setWidth(80);
+ t12_2.setHeight(10);
+ t12_2.setBackgroundColor("blue");
+ hbl12.add(t12_2);
+
+ var t12_3 = new qx.ui.basic.Terminator;
+ t12_3.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t12_3.setWidth("3*");
+ t12_3.setHeight(10);
+ t12_3.setBackgroundColor("red");
+ hbl12.add(t12_3);
+
+
+
+ /* ***********************************************
+
+ EXAMPLE 13:
+
+ *********************************************** */
+
+ var te13 = new qx.ui.basic.Label("#13");
+ te13.setLocation(20, 388);
+ d.add(te13);
+
+ var hbl13 = new qx.ui.layout.HorizontalBoxLayout;
+ hbl13.setLeft(50);
+ hbl13.setTop(388);
+ hbl13.setRight(335);
+ hbl13.setWidth(null);
+ hbl13.setHeight("auto");
+ hbl13.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ hbl13.setSpacing(4);
+ hbl13.setPadding(2);
+ d.add(hbl13);
+
+ var t13_1 = new qx.ui.basic.Terminator;
+ t13_1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t13_1.setWidth(200);
+ t13_1.setHeight(10);
+ t13_1.setBackgroundColor("green");
+ hbl13.add(t13_1);
+
+ var t13_2 = new qx.ui.form.TextField("http://qooxdoo.org");
+ t13_2.setWidth("1*");
+ t13_2.setStyleProperty("fontSize", "16px");
+ hbl13.add(t13_2);
+
+ var t13_3 = new qx.ui.form.Button(null, "icon/16/actions/dialog-ok.png");
+ hbl13.add(t13_3);
+
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/HtmlTable_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/HtmlTable_1.html
new file mode 100644
index 0000000000..ff20fa94d7
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/HtmlTable_1.html
@@ -0,0 +1,142 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <style type="text/css">*{ font-size: 10px; font-family: Verdana }</style>
+
+ <div id="demoDescription">
+ <p>Test table.</p>
+ </div>
+
+ <textarea id="info" style="position:absolute; top:48px; left:20px; width:600px;height:50px;border:1px solid black"></textarea>
+ <div id="view" style="position:absolute;top:148px;left:20px;width:400px;height:500px;border:1px solid black"></div>
+ <div id="scroller" style="position: absolute; top:148px; left:420px;height:500px;width:24px;border:1px solid black;overflow:scroll"><div id="scrollerContent" style="width:1px;height:5000px"></div></div>
+
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var updateCount = 0;
+
+ var tableHeight = 512;
+
+ var entryCount = 1000;
+
+ var rowHeight = 16;
+ var rowCount = Math.floor(tableHeight / rowHeight);
+
+ var view = document.getElementById("view");
+ var info = document.getElementById("info");
+ var scroller = document.getElementById("scroller");
+ var scrollerContent = document.getElementById("scrollerContent");
+
+
+
+ view.style.height = scroller.style.height = tableHeight + "px";
+ scrollerContent.style.height = Math.round(entryCount / rowCount * tableHeight) + "px";
+
+
+
+
+ var data = [];
+
+ for (var i=0; i<1000; i++) {
+ data.push({ col1 : "hello" + i, col2 : "world" + i, col3 : "foo" + i, col4 : "bar" + i, col5 : "baz" + i });
+ };
+
+ var cache = [];
+
+ var undef = "undefined";
+
+ var HTML =
+ {
+ table_start : "<table><tbody>",
+ table_end : "</tbody></table>",
+
+ tr_start : "<tr>",
+ tr_start_open : "<tr ",
+ tr_start_close : ">",
+ tr_end : "<tr>",
+
+ td_start : "<td>",
+ td_end : "</td>"
+ };
+
+ function arrayAppend(arr, a) {
+ Array.prototype.push.apply(arr, a);
+ };
+
+ function getCellHtml(cdata)
+ {
+ var html = [ HTML.td_start, cdata, HTML.td_end ];
+
+ return html;
+ };
+
+ function getRowHtml(rdata, nr)
+ {
+ if (typeof cache[nr] != undef) {
+ return cache[nr];
+ };
+
+ var html = [];
+ html.push(HTML.tr_start_open);
+
+ if (nr % 2 == 0)
+ {
+ html.push("style='background-color:#fff'");
+ };
+
+ html.push(HTML.tr_start_close);
+
+ for (var row in rdata) {
+ arrayAppend(html, getCellHtml(rdata[row]));
+ };
+
+ html.push(HTML.tr_stop);
+
+ cache[nr] = html;
+
+ return html;
+ };
+
+ function buildTableHtml(start, len)
+ {
+ var ttstart = (new Date).valueOf();
+
+ var html = [];
+
+ html.push(HTML.table_start);
+
+ for (var i=start, s=start+len; i<s; i++) {
+ arrayAppend(html, getRowHtml(data[i], i));
+ };
+
+ html.push(HTML.table_end);
+ view.innerHTML = html.join("");
+
+ updateCount++;
+
+ var ttend = (new Date).valueOf();
+ info.value = "Update: " + updateCount + "\nRows: " + start + " - " + (start+len) + "\n" + (ttend-ttstart) + "ms\n";
+ };
+
+ function doscroll() {
+ buildTableHtml(Math.floor(scroller.scrollTop/rowHeight), rowCount);
+ };
+
+ qx.html.EventRegistration.addEventListener(scroller, "scroll", doscroll);
+ doscroll();
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/HtmlTable_2.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/HtmlTable_2.html
new file mode 100644
index 0000000000..2a075005b1
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/HtmlTable_2.html
@@ -0,0 +1,140 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Test table with fixed column widths: 100, 50, 10, 30 and 20 pixel.</p>
+ </div>
+
+ <textarea id="info" style="position:absolute; top:48px; left:20px; width:600px;height:50px;border:1px solid black"></textarea>
+ <div id="view" style="position:absolute;top:148px;left:20px;width:400px;height:500px;border:1px solid black"></div>
+ <div id="scroller" style="position: absolute; top:148px; left:420px;height:500px;width:24px;border:1px solid black;overflow:scroll"><div id="scrollerContent" style="width:1px;height:5000px"></div></div>
+
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var updateCount = 0;
+
+ var tableHeight = 512;
+
+ var entryCount = 1000;
+
+ var rowHeight = 16;
+ var rowCount = Math.floor(tableHeight / rowHeight);
+
+ var view = document.getElementById("view");
+ var info = document.getElementById("info");
+ var scroller = document.getElementById("scroller");
+ var scrollerContent = document.getElementById("scrollerContent");
+
+
+
+ view.style.height = scroller.style.height = tableHeight + "px";
+ scrollerContent.style.height = Math.round(entryCount / rowCount * tableHeight) + "px";
+
+
+
+
+ var data = [];
+
+ for (var i=0; i<1000; i++) {
+ data.push({ col1 : "hello" + i, col2 : "world" + i, col3 : "foo" + i, col4 : "bar" + i, col5 : "baz" + i });
+ };
+
+ var cache = [];
+
+ var undef = "undefined";
+
+ var HTML =
+ {
+ table_start : '<table cellspacing="0" cellpadding="0" style="table-layout:fixed;width:210px"><colgroup><col width="100"/><col width="50"/><col width="10"/><col width="30"/><col width="20"/></colgroup><tbody>',
+ table_end : "</tbody></table>",
+
+ tr_start : "<tr>",
+ tr_start_open : "<tr ",
+ tr_start_close : ">",
+ tr_end : "<tr>",
+
+ td_start : '<td style="overflow:hidden;height:15px;border-right:1px solid red;border-bottom:1px solid red;padding-left:2px;padding-right:2px">',
+ td_end : "</td>"
+ };
+
+ function arrayAppend(arr, a) {
+ Array.prototype.push.apply(arr, a);
+ };
+
+ function getCellHtml(cdata)
+ {
+ var html = [ HTML.td_start, cdata, HTML.td_end ];
+
+ return html;
+ };
+
+ function getRowHtml(rdata, nr)
+ {
+ if (typeof cache[nr] != undef) {
+ return cache[nr];
+ };
+
+ var html = [];
+ html.push(HTML.tr_start_open);
+
+ if (nr % 2 == 0)
+ {
+ html.push("style='background-color:#fff'");
+ };
+
+ html.push(HTML.tr_start_close);
+
+ for (var row in rdata) {
+ arrayAppend(html, getCellHtml(rdata[row]));
+ };
+
+ html.push(HTML.tr_stop);
+
+ cache[nr] = html;
+
+ return html;
+ };
+
+ function buildTableHtml(start, len)
+ {
+ var ttstart = (new Date).valueOf();
+
+ var html = [];
+
+ html.push(HTML.table_start);
+
+ for (var i=start, s=start+len; i<s; i++) {
+ arrayAppend(html, getRowHtml(data[i], i));
+ };
+
+ html.push(HTML.table_end);
+ view.innerHTML = html.join("");
+
+ updateCount++;
+
+ var ttend = (new Date).valueOf();
+ info.value = "Update: " + updateCount + "\nRows: " + start + " - " + (start+len) + "\n" + (ttend-ttstart) + "ms\n";
+ };
+
+ function doscroll() {
+ buildTableHtml(Math.floor(scroller.scrollTop/rowHeight), rowCount);
+ };
+
+ qx.html.EventRegistration.addEventListener(scroller, "scroll", doscroll);
+ doscroll();
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/IconHtml_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/IconHtml_1.html
new file mode 100644
index 0000000000..186a306ea3
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/IconHtml_1.html
@@ -0,0 +1,29 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Testing qx.ui.embed.IconHtmlEmbed.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var l1 = new qx.ui.embed.IconHtmlEmbed("Hello World", "icon/32/apps/office-organizer.png", 32, 32);
+
+ l1.setLocation(20, 48);
+
+ qx.ui.core.ClientDocument.getInstance().add(l1);
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Image_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Image_1.html
new file mode 100644
index 0000000000..33b0c2d188
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Image_1.html
@@ -0,0 +1,114 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>This is a test for the qx.ui.basic.Image constructor. It supports automatic preloading through qx.io.image.Preloader, with error and load
+ QxEvents which will be fired, and cross-browser PNG with extended alpha channels.</p>
+
+ <p>PNG file in HTML (in Internet Explorer this should not be transparent):</p>
+ <img src="../../../../../framework/source/resource/icon/CrystalClear/48/categories/applications-games.png" width="48" height="48"/>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var i1 = new qx.ui.basic.Image("icon/64/apps/accessories-archiver.png", 48, 48);
+ with(i1)
+ {
+ setTop(48);
+ setLeft(20);
+ };
+
+ d.add(i1);
+
+
+
+ var i2 = new qx.ui.basic.Image("icon/64/apps/accessories-archiver.png", 48, 48);
+ with(i2)
+ {
+ setTop(48);
+ setLeft(100);
+ };
+
+ d.add(i2);
+
+
+
+
+ var i3 = new qx.ui.basic.Image("icon/64/apps/accessories-archiver.png", 96, 96);
+ with(i3)
+ {
+ setTop(120);
+ setLeft(60);
+ setResizeToInner(true);
+ };
+
+ /*
+ i3.addEventListener("load", function() {
+ new QxDebug("Bigger Symbol", "Preferred (Original) Size: " + this.getPreferredBoxWidth() + "x" + this.getPreferredBoxHeight());
+ });
+ */
+
+ d.add(i3);
+
+
+
+
+ var i4 = new qx.ui.basic.Image("icon/64/apps/accessories-archiver.png", 24, 24);
+ with(i4)
+ {
+ setTop(120);
+ setLeft(20);
+ setResizeToInner(true);
+ };
+
+ /*
+ i4.addEventListener("load", function() {
+ new QxDebug("Smaller Symbol", "Preferred (Original) Size: " + this.getPreferredBoxWidth() + "x" + this.getPreferredBoxHeight());
+ });
+ */
+
+ d.add(i4);
+
+
+
+
+ var i5 = new qx.ui.basic.Image("http://www.google.com/images/google_sm.gif");
+ with(i5)
+ {
+ setTop(300);
+ setLeft(20);
+ };
+
+ /*
+ i5.addEventListener("load", function() {
+ new QxDebug("Google Image", "Preferred (Original) Size: " + this.getPreferredBoxWidth() + "x" + this.getPreferredBoxHeight());
+ });
+ */
+
+ d.add(i5);
+
+
+
+
+
+ // Icon Themes
+ qx.manager.object.ImageManager.getInstance().createThemeList(d, 300, 48);
+
+
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Image_2.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Image_2.html
new file mode 100644
index 0000000000..97752e49ec
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Image_2.html
@@ -0,0 +1,150 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ Some advanced tests for qx.ui.basic.Image. Click on the fourth and fivth image to test the reflow possibilities.
+ The debug log gives you information of the preferred dimensions.
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var i1 = new qx.ui.basic.Image("icon/64/places/folder.png");
+
+ i1.setLeft(20);
+ i1.setTop(48);
+
+ i1.addEventListener("load", function() {
+ this.debug("Image 1: " + this.getPreferredBoxWidth() + "x" + this.getPreferredBoxHeight());
+ });
+
+
+
+ var i2 = new qx.ui.basic.Image("icon/64/places/folder.png");
+
+ i2.setLeft(120);
+ i2.setTop(48);
+ i2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ i2.setPadding(2, 4);
+
+ i2.addEventListener("load", function() {
+ this.debug("Image 2: " + this.getPreferredBoxWidth() + "x" + this.getPreferredBoxHeight());
+ });
+
+
+
+ var i3 = new qx.ui.basic.Image("icon/64/places/folder.png");
+
+ i3.setLeft(220);
+ i3.setTop(48);
+ i3.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ i3.setPadding(8);
+ i3.setOpacity(0.5);
+
+ i3.addEventListener("load", function() {
+ this.debug("Image 3: " + this.getPreferredBoxWidth() + "x" + this.getPreferredBoxHeight());
+ });
+
+
+
+ var i4 = new qx.ui.basic.Image("icon/64/places/folder.png");
+
+ i4.setLeft(320);
+ i4.setTop(48);
+ i4.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ i4.setPadding(2, 4);
+
+ i4.addEventListener("load", function() {
+ this.debug("Image 4: " + this.getPreferredBoxWidth() + "x" + this.getPreferredBoxHeight());
+ });
+
+ i4.addEventListener("click", function() {
+ this.setSource(this.getSource() == "icon/64/places/folder.png" ? "icon/32/actions/system-run.png" : "icon/64/places/folder.png");
+ });
+
+
+
+
+
+ var i5w1 = new qx.ui.layout.CanvasLayout;
+ i5w1.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ i5w1.setPadding(8);
+ i5w1.setLeft(420);
+ i5w1.setTop(48);
+ i5w1.setWidth("auto");
+ i5w1.setHeight("auto");
+
+ var i5w2 = new qx.ui.layout.CanvasLayout;
+ i5w2.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ i5w2.setPadding(8);
+ i5w2.setLeft(0);
+ i5w2.setTop(0);
+ i5w2.setWidth("auto");
+ i5w2.setHeight("auto");
+
+ var i5w3 = new qx.ui.layout.CanvasLayout;
+ i5w3.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ i5w3.setPadding(8);
+ i5w3.setLeft(0);
+ i5w3.setTop(0);
+ i5w3.setWidth("auto");
+ i5w3.setHeight("auto");
+
+ var i5 = new qx.ui.basic.Image("icon/64/places/folder.png");
+
+ i5.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ i5.setPadding(2, 4);
+
+ i5.addEventListener("load", function() {
+ this.debug("Image 4: " + this.getPreferredBoxWidth() + "x" + this.getPreferredBoxHeight());
+ });
+
+ i5.addEventListener("click", function() {
+ this.setSource(this.getSource() == "icon/64/places/folder.png" ? "icon/32/actions/system-run.png" : "icon/64/places/folder.png");
+ });
+
+ i5w1.add(i5w2);
+ i5w2.add(i5w3);
+ i5w3.add(i5);
+ d.add(i5w1);
+
+
+
+ var i6 = new qx.ui.basic.Image("icon/128/apps/graphics-image-viewer.png");
+ i6.setLeft(20);
+ i6.setRight(400);
+ i6.setTop(200);
+ i6.setHeight(150);
+ i6.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ i6.setWidth(null);
+
+ var i7 = new qx.ui.basic.Image("icon/128/apps/graphics-image-viewer.png");
+ i7.setLeft(20);
+ i7.setRight(400);
+ i7.setTop(400);
+ i7.setHeight(150);
+ i7.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ i7.setResizeToInner(true);
+ i7.setWidth(null);
+
+
+
+ d.add(i1, i2, i3, i4, i6, i7);
+
+
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Keyhandler_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Keyhandler_1.html
new file mode 100644
index 0000000000..2860d0749b
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Keyhandler_1.html
@@ -0,0 +1,117 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+
+ <style type="text/css">
+ #keylogger {
+ position: absolute;
+ width: 500px;
+ height: 500px;
+ left: 30px;
+ top: 40px;
+ color: black;
+ background-color: #EEE;
+ padding: 5px;
+ border: 1px inset;
+ overflow: scroll;
+ /* display:none; */
+ }
+
+ table {
+ width: 100%;
+ }
+
+ td {
+ text-align: center;
+ }
+ </style>
+
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Keyhandler Test</p>
+ <p>Displays qoooxdoo's normalized key events.</p>
+ </div>
+
+
+ <div id="keylogger">
+ </div>
+
+ <script type="text/javascript">
+
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var tableHead = "<table><tr><th>Event</th><th>key identifier</th><th>key code</th><th>char code</th><th>Shift</th><th>Ctrl</th><th>Alt</th></tr>";
+ var keyEvents = [];
+ var maxLogSize = 50;
+ var logDiv = document.getElementById("keylogger");
+
+ function initializeLogger() {
+ logDiv.innerHTML = tableHead + "</table>";
+ keyEvents = [];
+ }
+
+ function logKeyEvent(keyEvent) {
+ var eventCopy = {
+ type: keyEvent.getType(),
+ iden: keyEvent.getKeyIdentifier(),
+ keyCode: keyEvent.getKeyCode(),
+ charCode: keyEvent.getCharCode(),
+ shift: keyEvent.getDomEvent().shiftKey,
+ alt: keyEvent.getDomEvent().altKey,
+ ctrl: keyEvent.getDomEvent().ctrlKey
+ }
+ keyEvents.unshift(eventCopy);
+ keyEvents = keyEvents.slice(0, maxLogSize);
+ str = [tableHead];
+ for (var i=0; i<keyEvents.length; i++) {
+ var e = keyEvents[i];
+ str.push("<tr><td>");
+ str.push(e.type);
+ str.push("</td><td>");
+ str.push(e.iden);
+ str.push("</td><td>");
+ str.push(e.keyCode);
+ str.push("</td><td>");
+ str.push(e.charCode);
+ str.push("</td><td>");
+ str.push(e.shift);
+ str.push("</td><td>");
+ str.push(e.ctrl);
+ str.push("</td><td>");
+ str.push(e.alt);
+ str.push("</td></tr>");
+ }
+ str.push("</table>");
+ logDiv.innerHTML = str.join("");
+ logDiv.scrollTop = 0;
+ }
+
+ initializeLogger();
+
+ var d = qx.ui.core.ClientDocument.getInstance();
+ d.addEventListener("keydown", logKeyEvent);
+ d.addEventListener("keypress", logKeyEvent);
+ d.addEventListener("keyinput", logKeyEvent);
+ d.addEventListener("keyup", logKeyEvent);
+
+ var button = new qx.ui.form.Button("clear");
+ button.set({
+ left: 550,
+ top: 40
+ });
+ button.addEventListener("execute", initializeLogger);
+ button.addToDocument();
+
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Label_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Label_1.html
new file mode 100644
index 0000000000..f0b8492caf
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Label_1.html
@@ -0,0 +1,172 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ Some tests for qx.ui.basic.Label. Click on the third and fifth button like widget to test the reflow possibilities.
+ The debug log gives you information of the preferred dimensions.
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var c1 = new qx.ui.basic.Label("Hello qooxdoo!");
+
+ c1.setLeft(20);
+ c1.setTop(48);
+ c1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ c1.setPadding(2, 4);
+
+
+
+
+ var c2 = new qx.ui.basic.Label("<h1>Welcome to the qooxdoo universe</h1><p>Enjoy the new era of web interface development.</p>");
+
+ c2.setLeft(20);
+ c2.setTop(100);
+ c2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ c2.setPadding(8);
+
+
+
+
+ var c3 = new qx.ui.basic.Label("Delete temporary data", null, null, false);
+
+ c3.setLeft(20);
+ c3.setTop(200);
+ c3.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ c3.setPadding(4, 6);
+ c3.setBackgroundColor(new qx.renderer.color.Color("white"));
+
+ c3.addEventListener("click", function() {
+ this.getHtml() == "Delete temporary data" ? this.setHtml("Thank you") : this.setHtml("Delete temporary data");
+ });
+
+
+
+
+ var c4 = new qx.ui.basic.Label("Hello qooxdoo!");
+
+ c4.setLeft(20);
+ c4.setTop(250);
+ c4.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ c4.setPadding(2, 4);
+ c4.setStyleProperty("fontSize", "16px");
+ c4.setStyleProperty("fontWeight", "bold");
+ c4.setStyleProperty("fontStyle", "italic");
+ c4.setStyleProperty("textDecoration", "underline");
+ c4.setStyleProperty("textTransform", "uppercase");
+ c4.setFontPropertiesProfile("extended");
+
+
+
+
+
+ var c5 = new qx.ui.basic.Label("Delete temporary data", null, null, false);
+
+ c5.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ c5.setPadding(4, 6);
+ c5.setBackgroundColor(new qx.renderer.color.Color("white"));
+
+ c5.addEventListener("click", function() {
+ this.getHtml() == "Delete temporary data" ? this.setHtml("Thank you<br/>All your personal data was just deleted.<br/>Have Fun!") : this.setHtml("Delete temporary data");
+ });
+
+
+ var c5w = new qx.ui.layout.CanvasLayout;
+ c5w.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ c5w.setPadding(8);
+ c5w.setLeft(20);
+ c5w.setTop(350);
+ c5w.setWidth("auto");
+ c5w.setHeight("auto");
+
+ c5w.add(c5);
+ d.add(c5w);
+
+
+
+
+ var c6 = new qx.ui.basic.Label("This is a long label", "h");
+
+ c6.setTop(450);
+ c6.setLeft(20);
+ c6.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+
+
+ var c7 = new qx.ui.basic.Label("This is a long label with long-words and more text", "l", null, false);
+
+ c7.setTop(490);
+ c7.setLeft(20);
+ c7.setPadding(4);
+ c7.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ c7.setBackgroundColor("white");
+
+ c7.addEventListener("click", function(e)
+ {
+ switch(this.getWidth())
+ {
+ case 50:
+ this.setWidth(100);
+ break;
+
+ case 100:
+ this.setWidth(150);
+ break;
+
+ case 150:
+ this.setWidth(200);
+ break;
+
+ case 200:
+ this.setWidth("auto");
+ break;
+
+ case "auto":
+ this.setWidth(50);
+ break;
+ };
+ });
+
+
+ var parent8 = new qx.ui.layout.VerticalBoxLayout();
+ parent8.set({ top:48, left:500, width:150, height:150, spacing:5,
+ border:qx.renderer.border.BorderPresets.getInstance().thinInset });
+ parent8.setPadding(5);
+ parent8.addEventListener("click", function() {
+ this.setWidth((this.getWidth() == 150) ? 200 : 150);
+ });
+
+ var clickHint = new qx.ui.basic.Label("Click me");
+ clickHint.set({ width:"100%", height:"auto", wrap:true,
+ border:qx.renderer.border.BorderPresets.getInstance().thinOutset });
+ parent8.add(clickHint);
+
+ var wrapLabel1 = new qx.ui.basic.Label("This is a label having a auto-height that needs wrapping");
+ wrapLabel1.set({ width:"100%", height:"auto", wrap:true,
+ border:qx.renderer.border.BorderPresets.getInstance().thinOutset });
+ parent8.add(wrapLabel1);
+
+ var wrapLabel2 = new qx.ui.basic.Label("This is a label having a auto-height that needs wrapping");
+ wrapLabel2.set({ width:"100%", height:"auto", wrap:true,
+ border:qx.renderer.border.BorderPresets.getInstance().thinOutset });
+ parent8.add(wrapLabel2);
+
+
+ d.add(c1, c2, c3, c4, c5w, c6, c7, parent8);
+
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Label_2.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Label_2.html
new file mode 100644
index 0000000000..bfc2fccbe2
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Label_2.html
@@ -0,0 +1,40 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ qx.ui.basic.Label Stress Test
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var c;
+
+ for (var i=0; i<10; i++)
+ {
+ for (var j=0; j<20; j++)
+ {
+ c = new qx.ui.basic.Label("Test " + i + "|" + j);
+
+ c.setLeft(20+(i*60));
+ c.setTop(48+(j*30));
+
+ d.add(c);
+ };
+ };
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Label_3.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Label_3.html
new file mode 100644
index 0000000000..33156a1fcf
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Label_3.html
@@ -0,0 +1,177 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Some tests for qx.ui.basic.Label. Click on the third and fifth button like widget to test the reflow possibilities.
+ The debug log gives you information of the preferred dimensions.</p>
+ <p>Tests for qx.renderer.font.Font added</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var c1 = new qx.ui.basic.Label("Hello qooxdoo!");
+
+ c1.setLeft(20);
+ c1.setTop(48);
+ c1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ c1.setPadding(2, 4);
+
+ c1.addEventListener("mouseover", function(e) {
+ this.setFont("20px bold");
+ });
+
+ c1.addEventListener("mouseout", function(e) {
+ this.setFont(null);
+ });
+
+
+
+ var c2 = new qx.ui.basic.Label("<h1>Welcome to the qooxdoo universe</h1><p>Enjoy the new era of web interface development.</p>");
+
+ c2.setLeft(20);
+ c2.setTop(100);
+ c2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ c2.setPadding(8);
+
+
+
+
+ var c3 = new qx.ui.basic.Label("Delete temporary data", null, null, false);
+
+ c3.setLeft(20);
+ c3.setTop(200);
+ c3.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ c3.setPadding(4, 6);
+ c3.setBackgroundColor(new qx.renderer.color.Color("white"));
+
+ c3.addEventListener("click", function()
+ {
+ if (this.getHtml() == "Delete temporary data")
+ {
+ this.setHtml("Thank you");
+ this.setColor("red");
+ this.setFont("bold");
+ }
+ else
+ {
+ this.setHtml("Delete temporary data");
+ this.setColor(null);
+ this.setFont(null);
+ };
+ });
+
+
+
+
+ /*
+ var c4f = new qx.renderer.font.Font(16, "Times New Roman");
+ c4f.setBold(true);
+ c4f.setItalic(true);
+ c4f.setUnderline(true);
+ */
+
+ var c4 = new qx.ui.basic.Label("Hello qooxdoo!");
+
+ c4.setLeft(20);
+ c4.setTop(250);
+ c4.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ c4.setPadding(2, 4);
+ // c4.setFont(c4f);
+
+ // implicit usage of qx.renderer.font.FontCache
+ c4.setFont("16px Times New Roman bold italic underline");
+
+
+
+
+
+ var c5 = new qx.ui.basic.Label("Delete temporary data", null, null, false);
+
+ c5.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ c5.setPadding(4, 6);
+ c5.setBackgroundColor(new qx.renderer.color.Color("white"));
+
+ // re-use instance from above
+ // c5.setFont("16px Times New Roman bold italic underline");
+
+ // this is also possible and will be automatically converted to a single space seperated string
+ c5.setFont(["16px", "Times New Roman", "bold", "italic", "underline"]);
+
+ c5.addEventListener("click", function() {
+ this.getHtml() == "Delete temporary data" ? this.setHtml("Thank you<br/>All your personal data was just deleted.<br/>Have Fun!") : this.setHtml("Delete temporary data");
+ });
+
+
+ var c5w = new qx.ui.layout.CanvasLayout;
+ c5w.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ c5w.setPadding(8);
+ c5w.setLeft(20);
+ c5w.setTop(350);
+ c5w.setWidth("auto");
+ c5w.setHeight("auto");
+
+ c5w.add(c5);
+ d.add(c5w);
+
+
+
+
+ var c6 = new qx.ui.basic.Label("This is a long label", "h");
+
+ c6.setTop(450);
+ c6.setLeft(20);
+ c6.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+
+
+ var c7 = new qx.ui.basic.Label("This is a long label with long-words and more text", "l", null, false);
+
+ c7.setTop(490);
+ c7.setLeft(20);
+ c7.setPadding(4);
+ c7.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ c7.setBackgroundColor("white");
+
+ c7.addEventListener("click", function(e)
+ {
+ switch(this.getWidth())
+ {
+ case 50:
+ this.setWidth(100);
+ break;
+
+ case 100:
+ this.setWidth(150);
+ break;
+
+ case 150:
+ this.setWidth(200);
+ break;
+
+ case 200:
+ this.setWidth("auto");
+ break;
+
+ case "auto":
+ this.setWidth(50);
+ break;
+ };
+ });
+
+ d.add(c1, c2, c3, c4, c5w, c6, c7);
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Label_4.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Label_4.html
new file mode 100644
index 0000000000..30890ee68e
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Label_4.html
@@ -0,0 +1,101 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Testing mnemonic support.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var c1 = new qx.ui.basic.Label("Hello qooxdoo!");
+
+ c1.setLeft(20);
+ c1.setTop(48);
+ c1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ c1.setPadding(2, 4);
+ c1.setMnemonic("q");
+
+ d.add(c1);
+
+
+
+ var c2 = new qx.ui.basic.Label("A qx.ui.basic.Label with some more text", "T");
+
+ c2.setLeft(20);
+ c2.setTop(98);
+ c2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ c2.setPadding(2, 4);
+
+ d.add(c2);
+
+
+
+
+ var c3 = new qx.ui.basic.Label("A qx.ui.basic.Label with some more text", "C");
+
+ c3.setLeft(20);
+ c3.setTop(148);
+ c3.setWidth(80);
+ c3.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ c3.setPadding(2, 4);
+
+ d.add(c3);
+
+
+
+ var c4 = new qx.ui.basic.Label("Well done guy", "Q");
+
+ c4.setLeft(20);
+ c4.setTop(198);
+ c4.setWidth(70);
+ c4.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ c4.setPadding(2, 4);
+
+ d.add(c4);
+
+
+
+ var c5 = new qx.ui.basic.Label("Well done guy", "Q");
+
+ c5.setLeft(20);
+ c5.setTop(248);
+ c5.setWidth("10%");
+ c5.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ c5.setPadding(2, 4);
+
+ d.add(c5);
+
+
+
+
+
+ var a1 = new qx.ui.basic.Atom("Hello World", "icon/48/apps/graphics-snapshot.png")
+
+ a1.setLocation(250, 48);
+ a1.setWidth(100);
+ a1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ a1.setHorizontalChildrenAlign("left");
+
+ a1.getLabelObject().setMnemonic("H");
+ a1.getLabelObject().setWidth(50);
+
+ d.add(a1);
+
+
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Leak_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Leak_1.html
new file mode 100644
index 0000000000..e8e487ec8e
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Leak_1.html
@@ -0,0 +1,71 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Leak-Test</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ // Does not leak
+ // *****
+
+ // var i1 = new qx.io.image.Preloader(qx.manager.object.ImageManager.buildUri("icon/48/hardwareinfo.png"));
+
+
+ // Leaks: +2MB
+ // *****
+
+ var w1 = new qx.ui.basic.Terminator;
+ qx.ui.core.ClientDocument.getInstance().add(w1);
+
+
+
+
+
+ // Does not leak
+ // *****
+ /*
+ var w1 = new qx.ui.basic.Terminator;
+ w1.setTop(48);
+ w1.setLeft(20);
+ qx.ui.core.ClientDocument.getInstance().add(w1);
+ */
+
+
+ // Leaks +2MB
+ // *****
+ /*
+ var i1 = new qx.ui.basic.Image("icon/48/hardwareinfo.png");
+ with(i1)
+ {
+ setTop(48);
+ setLeft(20);
+ };
+
+ qx.ui.core.ClientDocument.getInstance().add(i1);
+ */
+
+
+
+
+
+
+ //var t1 = new QxTarget;
+
+
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Link_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Link_1.html
new file mode 100644
index 0000000000..be852fb8b8
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Link_1.html
@@ -0,0 +1,29 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Testing link widget.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var l1 = new qx.ui.embed.LinkEmbed("Open Google", "http://www.google.com");
+
+ l1.setLocation(20, 48);
+
+ qx.ui.core.ClientDocument.getInstance().add(l1);
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ListView_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ListView_1.html
new file mode 100644
index 0000000000..1552c7b02d
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ListView_1.html
@@ -0,0 +1,57 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Testing qx.ui.listview.ListView with text cells.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var ld = [];
+ var lt = [ "Image", "Text", "PDF", "Illustration", "Document" ];
+
+ for (var i=0, t; i<1000; i++)
+ {
+ t=Math.round(Math.random()*4);
+ ld.push({ name : { text : "File " + i }, size : { text : Math.round(Math.random()*100) + "kb" }, type : { text : lt[t] }, modified : { text : "Nov " + Math.round(Math.random() * 30 + 1) + " 2005" }, rights: { text : "-rw-r--r--" }});
+ };
+
+ var lc =
+ {
+ name : { label : "Name", width : 100, type : "text" },
+ size: { label : "Size", width : 50, type : "text", align : "right" },
+ type : { label : "Type", width : 80, type : "text" },
+ modified : { label : "Last Modified", width : 150, type : "text" },
+ rights : { label : "Rights", width: 80, type : "text" }
+ };
+
+ var lv = new qx.ui.listview.ListView(ld, lc);
+
+ lv.setBorder(qx.renderer.border.BorderPresets.getInstance().shadow);
+ lv.setBackgroundColor("white");
+ lv.setWidth(600);
+ lv.setHeight(350);
+ lv.setLocation(20, 48);
+
+ qx.ui.core.ClientDocument.getInstance().add(lv);
+
+
+
+
+ // Color Themes
+ qx.manager.object.ColorManager.getInstance().createThemeList(qx.ui.core.ClientDocument.getInstance(), 20, 448);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ListView_10.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ListView_10.html
new file mode 100644
index 0000000000..110f1028e7
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ListView_10.html
@@ -0,0 +1,86 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Testing qx.ui.listview.ListView in a qx.ui.window.Window.</p>
+ <p>I am sorry, but this seems not to be fixable with the current layouter stuff in qooxdoo.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var w = new qx.ui.window.Window("ListView");
+
+ w.setWidth(400);
+ w.setHeight(250);
+ w.setLocation(50, 50);
+
+ qx.ui.core.ClientDocument.getInstance().add(w);
+
+
+ /*
+ var cont = new qx.ui.layout.CanvasLayout;
+
+ cont.setEdge(0);
+ cont.setBackgroundColor("white");
+
+ w.add(cont);
+ */
+
+
+
+
+
+
+ var ld = [];
+ var lt = [ "Image", "Text", "PDF", "Illustration", "Document" ];
+
+ for (var i=0, t; i<1000; i++)
+ {
+ t=Math.round(Math.random()*4);
+ ld.push({ name : { text : "File " + i }, size : { text : Math.round(Math.random()*100) + "kb" }, type : { text : lt[t] }, modified : { text : "Nov " + Math.round(Math.random() * 30 + 1) + " 2005" }, rights: { text : "-rw-r--r--" }});
+ };
+
+ var lc =
+ {
+ name : { label : "Name", width : 100, type : "text" },
+ size: { label : "Size", width : 50, type : "text" },
+ type : { label : "Type", width : 80, type : "text" },
+ modified : { label : "Last Modified", width : 150, type : "text" },
+ rights : { label : "Rights", width: 80, type : "text" }
+ };
+
+ var lv = new qx.ui.listview.ListView(ld, lc);
+
+ lv.setBackgroundColor("white");
+ lv.setEdge(0);
+ lv.setWidth(null);
+ lv.setHeight(null);
+
+ w.add(lv);
+ //cont.add(lv);
+
+
+
+
+ w.open();
+
+
+
+
+ // Color Themes
+ qx.manager.object.ColorManager.getInstance().createThemeList(qx.ui.core.ClientDocument.getInstance(), 20, 448);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ListView_2.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ListView_2.html
new file mode 100644
index 0000000000..18583c37df
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ListView_2.html
@@ -0,0 +1,52 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Testing qx.ui.listview.ListView with text cells with an additional link.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var ld = [];
+ var lt = [ "Image", "Text", "PDF", "Illustration", "Document" ];
+
+ for (var i=0, t; i<1000; i++)
+ {
+ t=Math.round(Math.random()*4);
+ ld.push({ name : { text : "File " + i }, size : { text : Math.round(Math.random()*100) + "kb" }, type : { text : lt[t] }, modified : { text : "Nov " + Math.round(Math.random() * 30 + 1) + " 2005" }, rights: { text : "-rw-r--r--" }, open : { uri : "http://www.google.com/search?q=" + i, html : "Open " + i }});
+ };
+
+ var lc =
+ {
+ name : { label : "Name", width : 100, type : "text" },
+ size: { label : "Size", width : 50, type : "text", align : "right" },
+ type : { label : "Type", width : 80, type : "text" },
+ modified : { label : "Last Modified", width : 150, type : "text" },
+ rights : { label : "Rights", width: 80, type : "text" },
+ open : { label : "", width : 100, type : "link" }
+ };
+
+ var lv = new qx.ui.listview.ListView(ld, lc);
+
+ lv.setBorder(qx.renderer.border.BorderPresets.getInstance().shadow);
+ lv.setBackgroundColor("white");
+ lv.setWidth(600);
+ lv.setHeight(350);
+ lv.setLocation(20, 48);
+
+ qx.ui.core.ClientDocument.getInstance().add(lv);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ListView_3.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ListView_3.html
new file mode 100644
index 0000000000..8a504135a4
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ListView_3.html
@@ -0,0 +1,52 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Testing qx.ui.listview.ListView with text cells.</p>
+ <p>Now with icons inside the header cells.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var ld = [];
+ var lt = [ "Image", "Text", "PDF", "Illustration", "Document" ];
+
+ for (var i=0, t; i<1000; i++)
+ {
+ t=Math.round(Math.random()*4);
+ ld.push({ name : { text : "File " + i }, size : { text : Math.round(Math.random()*100) + "kb" }, type : { text : lt[t] }, modified : { text : "Nov " + Math.round(Math.random() * 30 + 1) + " 2005" }, rights: { text : "-rw-r--r--" }});
+ };
+
+ var lc =
+ {
+ name : { label : "Name", icon : "icon/16/categories/applications.png", width : 100, type : "text" },
+ size: { label : "Size", icon : "icon/16/devices/media-floppy.png", width : 50, type : "text", align : "right" },
+ type : { label : "Type", icon : "icon/16/apps/accessories-notes.png", width : 80, type : "text" },
+ modified : { label : "Last Modified", icon : "icon/16/apps/preferences.png", width : 150, type : "text" },
+ rights : { label : "Rights", icon : "icon/16/apps/system-users.png", width: 80, type : "text" }
+ };
+
+ var lv = new qx.ui.listview.ListView(ld, lc);
+
+ lv.setBorder(qx.renderer.border.BorderPresets.getInstance().shadow);
+ lv.setBackgroundColor("white");
+ lv.setWidth(600);
+ lv.setHeight(350);
+ lv.setLocation(20, 48);
+
+ qx.ui.core.ClientDocument.getInstance().add(lv);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ListView_4.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ListView_4.html
new file mode 100644
index 0000000000..1b20de033b
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ListView_4.html
@@ -0,0 +1,52 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Testing qx.ui.listview.ListView with text cells.</p>
+ <p>This qx.ui.listview.ListView will be resized with the window.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var ld = [];
+ var lt = [ "Image", "Text", "PDF", "Illustration", "Document" ];
+
+ for (var i=0, t; i<1000; i++)
+ {
+ t=Math.round(Math.random()*4);
+ ld.push({ name : { text : "File " + i }, size : { text : Math.round(Math.random()*100) + "kb" }, type : { text : lt[t] }, modified : { text : "Nov " + Math.round(Math.random() * 30 + 1) + " 2005" }, rights: { text : "-rw-r--r--" }});
+ };
+
+ var lc =
+ {
+ name : { label : "Name", width : 100, type : "text" },
+ size: { label : "Size", width : 50, type : "text", align : "right" },
+ type : { label : "Type", width : 80, type : "text" },
+ modified : { label : "Last Modified", width : 150, type : "text" },
+ rights : { label : "Rights", width: 80, type : "text" }
+ };
+
+ var lv = new qx.ui.listview.ListView(ld, lc);
+
+ lv.setBorder(qx.renderer.border.BorderPresets.getInstance().shadow);
+ lv.setBackgroundColor("white");
+ lv.setLocation(20, 48);
+ lv.setRight(335);
+ lv.setBottom(48);
+
+ qx.ui.core.ClientDocument.getInstance().add(lv);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ListView_5.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ListView_5.html
new file mode 100644
index 0000000000..df9bcb0644
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ListView_5.html
@@ -0,0 +1,53 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Testing qx.ui.listview.ListView with text cells.</p>
+ <p>This qx.ui.listview.ListView will be resized with the window.</p>
+ <p>Using percents for columns.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var ld = [];
+ var lt = [ "Image", "Text", "PDF", "Illustration", "Document" ];
+
+ for (var i=0, t; i<1000; i++)
+ {
+ t=Math.round(Math.random()*4);
+ ld.push({ name : { text : "File " + i }, size : { text : Math.round(Math.random()*100) + "kb" }, type : { text : lt[t] }, modified : { text : "Nov " + Math.round(Math.random() * 30 + 1) + " 2005" }, rights: { text : "-rw-r--r--" }});
+ };
+
+ var lc =
+ {
+ name : { label : "Name", width : "30%", type : "text" },
+ size: { label : "Size", width : "10%", type : "text", align : "right" },
+ type : { label : "Type", width : "15%", type : "text" },
+ modified : { label : "Last Modified", width : "20%", type : "text" },
+ rights : { label : "Rights", width: "15%", type : "text" }
+ };
+
+ var lv = new qx.ui.listview.ListView(ld, lc);
+
+ lv.setBorder(qx.renderer.border.BorderPresets.getInstance().shadow);
+ lv.setBackgroundColor("white");
+ lv.setLocation(20, 48);
+ lv.setRight(335);
+ lv.setBottom(48);
+
+ qx.ui.core.ClientDocument.getInstance().add(lv);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ListView_6.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ListView_6.html
new file mode 100644
index 0000000000..1e917e584c
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ListView_6.html
@@ -0,0 +1,53 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Testing qx.ui.listview.ListView with text cells.</p>
+ <p>Supports minimum and maximum width of columns.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var ld = [];
+ var lt = [ "Image", "Text", "PDF", "Illustration", "Document" ];
+
+ for (var i=0, t; i<1000; i++)
+ {
+ t=Math.round(Math.random()*4);
+ ld.push({ name : { text : "File " + i }, size : { text : Math.round(Math.random()*100) + "kb" }, type : { text : lt[t] }, modified : { text : "Nov " + Math.round(Math.random() * 30 + 1) + " 2005" }, rights: { text : "-rw-r--r--" }});
+ };
+
+ var lc =
+ {
+ name : { label : "Name", width : 100, minWidth : "auto", type : "text" },
+ size: { label : "Size", width : 50, minWidth : 50, type : "text" },
+ type : { label : "Type", width : 80, minWidth : 80, type : "text" },
+ modified : { label : "Last Modified", width : 100, minWidth : 100, maxWidth : 100, type : "text" },
+ rights : { label : "Rights", width: 80, minWidth : 50, type : "text" }
+ };
+
+ var lv = new qx.ui.listview.ListView(ld, lc);
+
+ lv.setBorder(qx.renderer.border.BorderPresets.getInstance().shadow);
+ lv.setBackgroundColor("white");
+ lv.setWidth(600);
+ lv.setHeight(350);
+ lv.setLocation(20, 48);
+
+ qx.ui.core.ClientDocument.getInstance().add(lv);
+
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ListView_7.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ListView_7.html
new file mode 100644
index 0000000000..4532582a9c
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ListView_7.html
@@ -0,0 +1,114 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Testing qx.ui.listview.ListView with text cells.</p>
+ <p>Added some buttons to fill/clear the list dynamically.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var ld = [];
+ var lt = [ "Image", "Text", "PDF", "Illustration", "Document" ];
+
+ var lc =
+ {
+ name : { label : "Name", width : 100, type : "text", sortable : true, sortProp : "text" },
+ size: { label : "Size", width : 50, type : "text", sortable : true, sortProp : "text", sortMethod : qx.util.Compare.byIntegerString },
+ type : { label : "Type", width : 80, type : "text", sortable : true, sortProp : "text" },
+ modified : { label : "Last Modified", width : 150, type : "text" },
+ rights : { label : "Rights", width: 80, type : "text" }
+ };
+
+ var lv = new qx.ui.listview.ListView(ld, lc);
+
+ lv.setBorder(qx.renderer.border.BorderPresets.getInstance().shadow);
+ lv.setBackgroundColor("white");
+ lv.setWidth(500);
+ lv.setHeight(350);
+ lv.setLocation(20, 48);
+
+ qx.ui.core.ClientDocument.getInstance().add(lv);
+
+ function add(nu)
+ {
+ nu = nu||10;
+
+ for (var i=0, t; i<nu; i++)
+ {
+ t=Math.round(Math.random()*4);
+ ld.push({ name : { text : "File " + ld.length }, size : { text : Math.round(Math.random()*100) + "kb" }, type : { text : lt[t] }, modified : { text : "Nov " + Math.round(Math.random() * 30 + 1) + " 2005" }, rights: { text : "-rw-r--r--" }});
+ };
+
+ lv.updateSort();
+ lv.update();
+ };
+
+ function remove(nu)
+ {
+ nu = Math.min(ld.length, nu || 10);
+
+ ld.splice(ld.length-nu, nu);
+
+ lv.updateSort();
+ lv.update();
+ };
+
+ function clear()
+ {
+ ld.removeAll();
+ lv.update();
+ };
+
+ var btnAdd10 = new qx.ui.form.Button("Add 10", "icon/16/actions/dialog-ok.png");
+ var btnAdd50 = new qx.ui.form.Button("Add 50", "icon/16/actions/dialog-ok.png");
+ var btnAdd100 = new qx.ui.form.Button("Add 100", "icon/16/actions/dialog-ok.png");
+ var btnAdd1000 = new qx.ui.form.Button("Add 1000", "icon/16/actions/dialog-ok.png");
+
+ var btnRemove10 = new qx.ui.form.Button("Remove 10", "icon/16/actions/dialog-ok.png");
+ var btnRemove50 = new qx.ui.form.Button("Remove 50", "icon/16/actions/dialog-ok.png");
+ var btnRemove100 = new qx.ui.form.Button("Remove 100", "icon/16/actions/dialog-ok.png");
+ var btnRemove1000 = new qx.ui.form.Button("Remove 1000", "icon/16/actions/dialog-ok.png");
+
+ var btnClear = new qx.ui.form.Button("Clear", "icon/16/actions/dialog-ok.png");
+
+ btnAdd10.setLocation(550, 48);
+ btnAdd50.setLocation(550, 78);
+ btnAdd100.setLocation(550, 108);
+ btnAdd1000.setLocation(550, 138);
+
+ btnRemove10.setLocation(550, 188);
+ btnRemove50.setLocation(550, 218);
+ btnRemove100.setLocation(550, 248);
+ btnRemove1000.setLocation(550, 278);
+
+ btnClear.setLocation(550, 328);
+
+ btnAdd10.addEventListener("execute", function(e) { add(10); });
+ btnAdd50.addEventListener("execute", function(e) { add(50); });
+ btnAdd100.addEventListener("execute", function(e) { add(100); });
+ btnAdd1000.addEventListener("execute", function(e) { add(1000); });
+
+ btnRemove10.addEventListener("execute", function(e) { remove(10); });
+ btnRemove50.addEventListener("execute", function(e) { remove(50); });
+ btnRemove100.addEventListener("execute", function(e) { remove(100); });
+ btnRemove1000.addEventListener("execute", function(e) { remove(1000); });
+
+ btnClear.addEventListener("execute", function(e) { clear(); });
+
+ qx.ui.core.ClientDocument.getInstance().add(btnAdd10, btnAdd50, btnAdd100, btnAdd1000, btnRemove10, btnRemove50, btnRemove100, btnRemove1000, btnClear);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ListView_8.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ListView_8.html
new file mode 100644
index 0000000000..8ed5eb8eba
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ListView_8.html
@@ -0,0 +1,121 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Testing qx.ui.listview.ListView with text cells.</p>
+ <p>And with drag and drop between the two qx.ui.listview.ListViews.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var ld = [];
+ var lt = [ "Image", "Text", "PDF", "Illustration", "Document" ];
+
+ for (var i=0, t; i<1000; i++)
+ {
+ t=Math.round(Math.random()*4);
+ ld.push({ name : { text : "File " + i }, size : { text : Math.round(Math.random()*100) + "kb" }, type : { text : lt[t] }, modified : { text : "Nov " + Math.round(Math.random() * 30 + 1) + " 2005" }, rights: { text : "-rw-r--r--" }});
+ };
+
+ var lc1 =
+ {
+ name : { label : "Name", width : 100, type : "text", sortable : true, sortProp : "text" },
+ size: { label : "Size", width : 50, type : "text", sortable : true, sortProp : "text", sortMethod : qx.util.Compare.byIntegerString },
+ type : { label : "Type", width : 80, type : "text", sortable : true, sortProp : "text" },
+ modified : { label : "Last Modified", width : 150, type : "text" },
+ rights : { label : "Rights", width: 80, type : "text" }
+ };
+
+ var lc2 =
+ {
+ name : { label : "Name", width : 100, type : "text", sortable : true, sortProp : "text" },
+ size: { label : "Size", width : 50, type : "text", sortable : true, sortProp : "text", sortMethod : qx.util.Compare.byIntegerString },
+ type : { label : "Type", width : 80, type : "text", sortable : true, sortProp : "text" },
+ modified : { label : "Last Modified", width : 150, type : "text" },
+ rights : { label : "Rights", width: 80, type : "text" }
+ };
+
+
+ function handleDrag(e)
+ {
+ e.addData("qx.ui.listview.ListViewEntries", qx.lang.Array.copy(e.getCurrentTarget().getManager().getSelectedItems()));
+ e.addAction("move");
+ e.startDrag();
+ };
+
+ function handleDrop(e)
+ {
+ var type = e.getDropDataTypes()[0];
+ var data = e.getData(type);
+
+ switch(e.getAction())
+ {
+ case "move":
+ sourceView.getPane().getManager().setSelectedItems([]);
+ sourceView.getPane().getManager().setAnchorItem(null);
+ sourceView.getPane().getManager().setLeadItem(null);
+
+ for (var i=0, l=data.length; i<l; i++)
+ {
+ qx.lang.Array.remove(sourceView.getData(), data[i]);
+ destView.getData().push(data[i]);
+ };
+
+ destView.getPane().getManager().setSelectedItems(data);
+
+ sourceView.updateSort();
+ destView.updateSort();
+
+ sourceView.update();
+ destView.update();
+ };
+ };
+
+
+
+
+
+ var sourceView = new qx.ui.listview.ListView(ld, lc1);
+
+ sourceView.setBorder(qx.renderer.border.BorderPresets.getInstance().shadow);
+ sourceView.setBackgroundColor("white");
+ sourceView.setWidth(600);
+ sourceView.setHeight(250);
+ sourceView.setLocation(20, 48);
+
+ sourceView.getPane().getManager().setDragSelection(false);
+ sourceView.getPane().addEventListener("dragstart", handleDrag);
+
+ qx.ui.core.ClientDocument.getInstance().add(sourceView);
+
+
+
+
+ var destView = new qx.ui.listview.ListView([], lc2);
+
+ destView.setBorder(qx.renderer.border.BorderPresets.getInstance().shadow);
+ destView.setBackgroundColor("white");
+ destView.setWidth(600);
+ destView.setHeight(250);
+ destView.setLocation(20, 318);
+
+ destView.getPane().getManager().setDragSelection(false);
+ destView.getPane().setDropDataTypes(["qx.ui.listview.ListViewEntries"]);
+ destView.getPane().addEventListener("dragdrop", handleDrop);
+
+ qx.ui.core.ClientDocument.getInstance().add(destView);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ListView_9.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ListView_9.html
new file mode 100644
index 0000000000..9810398670
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ListView_9.html
@@ -0,0 +1,119 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Testing qx.ui.listview.ListView with text cells.</p>
+ <p>And with drag and drop between the two qx.ui.listview.ListViews.</p>
+ <p>Reduced columns for second listview.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var ld = [];
+ var lt = [ "Image", "Text", "PDF", "Illustration", "Document" ];
+
+ for (var i=0, t; i<1000; i++)
+ {
+ t=Math.round(Math.random()*4);
+ ld.push({ name : { text : "File " + i }, size : { text : Math.round(Math.random()*100) + "kb" }, type : { text : lt[t] }, modified : { text : "Nov " + Math.round(Math.random() * 30 + 1) + " 2005" }, rights: { text : "-rw-r--r--" }});
+ };
+
+ var lc1 =
+ {
+ name : { label : "Name", width : 100, type : "text", sortable : true, sortProp : "text" },
+ size: { label : "Size", width : 50, type : "text", sortable : true, sortProp : "text", sortMethod : qx.util.Compare.byIntegerString },
+ type : { label : "Type", width : 80, type : "text", sortable : true, sortProp : "text" },
+ modified : { label : "Last Modified", width : 150, type : "text" },
+ rights : { label : "Rights", width: 80, type : "text" }
+ };
+
+ var lc2 =
+ {
+ name : { label : "Name", width : 200, type : "text", sortable : true, sortProp : "text" },
+ type : { label : "Type", width : 80, type : "text", sortable : true, sortProp : "text" }
+ };
+
+
+ function handleDrag(e)
+ {
+ e.addData("qx.ui.listview.ListViewEntries", qx.lang.Array.copy(e.getCurrentTarget().getManager().getSelectedItems()));
+ e.addAction("move");
+ e.startDrag();
+ };
+
+ function handleDrop(e)
+ {
+ var type = e.getDropDataTypes()[0];
+ var data = e.getData(type);
+
+ switch(e.getAction())
+ {
+ case "move":
+ sourceView.getPane().getManager().setSelectedItems([]);
+ sourceView.getPane().getManager().setAnchorItem(null);
+ sourceView.getPane().getManager().setLeadItem(null);
+
+ for (var i=0, l=data.length; i<l; i++)
+ {
+ qx.lang.Array.remove(sourceView.getData(), data[i]);
+ destView.getData().push(data[i]);
+ };
+
+ destView.getPane().getManager().setSelectedItems(data);
+
+ sourceView.updateSort();
+ destView.updateSort();
+
+ sourceView.update();
+ destView.update();
+ };
+ };
+
+
+
+
+
+ var sourceView = new qx.ui.listview.ListView(ld, lc1);
+
+ sourceView.setBorder(qx.renderer.border.BorderPresets.getInstance().shadow);
+ sourceView.setBackgroundColor("white");
+ sourceView.setWidth(600);
+ sourceView.setHeight(250);
+ sourceView.setLocation(20, 48);
+
+ sourceView.getPane().getManager().setDragSelection(false);
+ sourceView.getPane().addEventListener("dragstart", handleDrag);
+
+ qx.ui.core.ClientDocument.getInstance().add(sourceView);
+
+
+
+
+ var destView = new qx.ui.listview.ListView([], lc2);
+
+ destView.setBorder(qx.renderer.border.BorderPresets.getInstance().shadow);
+ destView.setBackgroundColor("white");
+ destView.setWidth(600);
+ destView.setHeight(250);
+ destView.setLocation(20, 318);
+
+ destView.getPane().getManager().setDragSelection(false);
+ destView.getPane().setDropDataTypes(["qx.ui.listview.ListViewEntries"]);
+ destView.getPane().addEventListener("dragdrop", handleDrop);
+
+ qx.ui.core.ClientDocument.getInstance().add(destView);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/List_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/List_1.html
new file mode 100644
index 0000000000..d24e00f3d0
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/List_1.html
@@ -0,0 +1,128 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>List implementation. Now testing auto dimensions.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var l1 = new qx.ui.form.List;
+
+ l1.set({ top : 48, left: 20, height: 200, width: "auto", overflow : "scrollY" });
+
+ var item;
+ for( var i=1; i<=35; i++ )
+ {
+ // item = new qx.ui.form.ListItem("Item No " + i);
+ item = new qx.ui.form.ListItem("Item No " + i, "icon/" + ((i % 4) ? "16" : "48") + "/places/folder.png");
+
+ !(i % 9) && (item.setEnabled(false));
+
+ l1.add(item);
+ };
+
+ d.add(l1);
+
+ var l2 = new qx.ui.form.List;
+
+ l2.set({ top : 48, left: 400, height: 200, width: "auto" });
+ l2.getManager().setMultiSelection(false);
+ //l2.setOverflow("scrollY");
+ l2.setHeight("auto");
+
+ var l2l = [ "red", "violett", "rose", "blue", "green", "cyan", "magenta", "yellow", "brown", "orange", "black", "white", "grey", "gray", "brown" ];
+
+ for (var i=0; i<l2l.length; i++) {
+ l2.add(new qx.ui.form.ListItem(l2l[i]));
+ };
+
+ d.add(l2);
+
+
+
+
+ var c1 = new qx.ui.form.CheckBox("Enable Multi-Selection");
+ var c2 = new qx.ui.form.CheckBox("Enable Drag-Selection");
+ var c3 = new qx.ui.form.CheckBox("Allow Deselection");
+ var c4 = new qx.ui.form.CheckBox("Enable Inline Find");
+
+ c1.setLocation(180, 48);
+ c2.setLocation(180, 68);
+ c3.setLocation(180, 88);
+ c4.setLocation(180, 108);
+
+ d.add(c1, c2, c3, c4);
+
+ c1.setChecked(true);
+ c2.setChecked(true);
+ c3.setChecked(true);
+ c4.setChecked(true);
+
+ c1.addEventListener("changeChecked", function(e) {
+ l1.getManager().setMultiSelection(e.getData());
+ });
+
+ c2.addEventListener("changeChecked", function(e) {
+ l1.getManager().setDragSelection(e.getData());
+ });
+
+ c3.addEventListener("changeChecked", function(e) {
+ l1.getManager().setCanDeselect(e.getData());
+ });
+
+ c4.addEventListener("changeChecked", function(e) {
+ l1.setEnableInlineFind(e.getData());
+ });
+
+
+
+
+
+ var rd1 = new qx.ui.form.RadioButton("Show Label", "label");
+ var rd2 = new qx.ui.form.RadioButton("Show Icon", "icon");
+ var rd3 = new qx.ui.form.RadioButton("Show Both", "both");
+
+ rd1.set( { left: 180, top: 128 } );
+ rd2.set( { left: 180, top: 148 } );
+ rd3.set( { left: 180, top: 168 } );
+
+ d.add(rd1, rd2, rd3);
+
+ rd3.setChecked(true);
+
+ var rbm = new qx.manager.selection.RadioManager( name, [rd1, rd2, rd3]);
+
+ rbm.addEventListener("changeSelected", function(e)
+ {
+ for( var i=0; i<l1.getChildrenLength(); i++ ) {
+ l1.getChildren()[i].setShow(e.getData().getValue());
+ };
+ });
+
+
+
+
+
+ // Icon Themes
+ qx.manager.object.ImageManager.getInstance().createThemeList(d, 20, 348);
+
+ // Color Themes
+ qx.manager.object.ColorManager.getInstance().createThemeList(d, 200, 348);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/List_2.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/List_2.html
new file mode 100644
index 0000000000..480d7d0a18
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/List_2.html
@@ -0,0 +1,111 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>List implementation</p>
+ <p>Drag and Drop Handling added</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var doc = qx.ui.core.ClientDocument.getInstance();
+
+ // Create list to drag from
+
+
+ var sourceList = new qx.ui.form.List();
+ sourceList.setWidth(100);
+ sourceList.setHeight(250);
+ sourceList.setLeft(20);
+ sourceList.setTop(48);
+
+ // Set vertical scroll bar to always visible
+ sourceList.setOverflow("scrollY");
+ // Set selection mode to single explicitly
+ // sourceList.getManager().setMultiSelection(false);
+ // Set drag selection mode to off
+ sourceList.getManager().setDragSelection(false);
+
+ // Add items to source list
+
+ for (var i = 1; i <= 10; i++)
+ {
+ var item = new qx.ui.form.ListItem("Item " + i);
+ item.addEventListener("dragstart", handleStartDrag);
+ sourceList.add(item);
+ };
+
+ doc.add(sourceList);
+
+
+
+ // Create list to drop to
+
+ var destList = new qx.ui.form.List();
+ destList.setWidth(100);
+ destList.setHeight(250);
+ destList.setLeft(320);
+ destList.setTop(48);
+
+ // Set vertical scroll bar to always visible
+ destList.setOverflow("scrollY");
+ // Set selection mode to single explicitly
+ // destList.getManager().setMultiSelection(false);
+ // Set drag selection mode to off
+ destList.getManager().setDragSelection(false);
+
+ doc.add(destList);
+
+ // Define event handlers
+
+ function handleStartDrag(e)
+ {
+ e.addData("ListItems", qx.lang.Array.copy(sourceList.getManager().getSelectedItems()));
+ e.addAction("move");
+ e.startDrag();
+ };
+
+ function handleListDrop(e)
+ {
+ var type = e.getDropDataTypes()[0];
+ var data = e.getData(type);
+
+ // this.debug("Drag&Drop Action: " + e.getAction());
+
+ switch(e.getAction())
+ {
+ case "move":
+ sourceList.getManager().setSelectedItems([]);
+ sourceList.getManager().setAnchorItem(null);
+ sourceList.getManager().setLeadItem(null);
+
+ for (var i=0, l=data.length; i<l; i++) {
+ destList.add(data[i]);
+ };
+
+ destList.getManager().setSelectedItems(data);
+ break;
+ };
+ };
+
+
+
+ // Set event properties for destination list
+
+ destList.setDropDataTypes(["ListItems"]);
+ destList.addEventListener("dragdrop", handleListDrop);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/List_3.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/List_3.html
new file mode 100644
index 0000000000..bf9241083c
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/List_3.html
@@ -0,0 +1,55 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>qx.ui.form.List Item Sorting demo</p>
+ </div>
+
+ <script type="text/javascript">
+
+ qx.core.Init.getInstance().defineMain(function() {
+ var list = new qx.ui.form.List(); list.set({top:50,left:50,height:150,width:100});
+
+ list.add(new qx.ui.form.ListItem('Will',null,'1'));
+ list.add(new qx.ui.form.ListItem('Anna',null,'2'));
+ list.add(new qx.ui.form.ListItem('Tom',null,'3'));
+ list.add(new qx.ui.form.ListItem('Diana',null,'4'));
+ list.add(new qx.ui.form.ListItem('Pete',null,'5'));
+ list.add(new qx.ui.form.ListItem('Carol',null,'6'));
+
+ var btn1 = new qx.ui.form.Button('Sort By Label'); btn1.set({top:50,left:200});
+ btn1.addEventListener('click',function(e){
+ list.sortItemsByString();
+ });
+
+ var btn2 = new qx.ui.form.Button('Sort By Label Reverse'); btn2.set({top:80,left:200});
+ btn2.addEventListener('click',function(e){
+ list.sortItemsByString(true);
+ });
+
+ var btn3 = new qx.ui.form.Button('Sort By Value'); btn3.set({top:140,left:200});
+ btn3.addEventListener('click',function(e){
+ list.sortItemsByValue();
+ });
+
+ var btn4 = new qx.ui.form.Button('Sort By Value Reverse'); btn4.set({top:170,left:200});
+ btn4.addEventListener('click',function(e){
+ list.sortItemsByValue(true);
+ });
+
+ qx.ui.core.ClientDocument.getInstance().add(btn1,btn2,btn3,btn4);
+ qx.ui.core.ClientDocument.getInstance().add(list);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Menu_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Menu_1.html
new file mode 100644
index 0000000000..ee000b62ed
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Menu_1.html
@@ -0,0 +1,129 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>qx.ui.menu.Menu Implementation</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+
+ var m2 = new qx.ui.menu.Menu;
+
+ var mb2_01 = new qx.ui.menu.Button("New Window");
+ var mb2_02 = new qx.ui.menu.Button("Overlapping");
+ var mb2_03 = new qx.ui.menu.Button("Split Vertical");
+ var mb2_04 = new qx.ui.menu.Button("Split Horizontal");
+ var mb2_05 = new qx.ui.menu.Button("Next Window");
+ var mb2_06 = new qx.ui.menu.Button("Previous Window");
+
+ m2.add(mb2_01, mb2_02, mb2_03, mb2_04, mb2_05, mb2_06);
+
+
+
+
+ var m3 = new qx.ui.menu.Menu;
+
+ var mb3_01 = new qx.ui.menu.Button("Tahoma, 11pt");
+ var mb3_02 = new qx.ui.menu.Button("Tahoma, 12pt");
+ var mb3_03 = new qx.ui.menu.Button("Tahoma, 13pt");
+ var mb3_04 = new qx.ui.menu.Button("Tahoma, 14pt");
+ var mb3_05 = new qx.ui.menu.Button("Tahoma, 15pt");
+
+ m3.add(mb3_01, mb3_02, mb3_03, mb3_04, mb3_05);
+
+
+
+ var m1 = new qx.ui.menu.Menu;
+
+ var mb1_01 = new qx.ui.menu.Button("View/Lists");
+ var mb1_02 = new qx.ui.menu.Button("Syntax Highlighting");
+ var ms1 = new qx.ui.menu.Separator();
+ var mb1_03 = new qx.ui.menu.Button("Window Font");
+ var mb1_04 = new qx.ui.menu.Button("Printer Font", null, null, m3);
+ var ms2 = new qx.ui.menu.Separator();
+ var mb1_05 = new qx.ui.menu.Button("Undo");
+ var mb1_06 = new qx.ui.menu.Button("Redo");
+ var ms3 = new qx.ui.menu.Separator();
+ var mb1_07 = new qx.ui.menu.Button("Cut", "icon/16/actions/edit-cut.png");
+ var mb1_08 = new qx.ui.menu.Button("Copy", "icon/16/actions/edit-copy.png");
+ var mb1_09 = new qx.ui.menu.Button("Paste", "icon/16/actions/edit-paste.png");
+ var mb1_10 = new qx.ui.menu.Button("Delete", "icon/16/actions/edit-delete.png");
+ var mb1_11 = new qx.ui.menu.Button("Select All");
+ var ms4 = new qx.ui.menu.Separator();
+ var mb1_12 = new qx.ui.menu.Button("Search");
+ var mb1_13 = new qx.ui.menu.Button("Search Again");
+ var ms5 = new qx.ui.menu.Separator();
+ var mb1_14 = new qx.ui.menu.Button("View", null, null, m2);
+ var mb1_15 = new qx.ui.menu.Button("Editor Settings...");
+ var mb1_16 = new qx.ui.menu.Button("Editor Plugins");
+ var mb1_17 = new qx.ui.menu.Button("Framework Settings");
+
+ m1.add(mb1_01, mb1_02, ms1, mb1_03, mb1_04, ms2, mb1_05, mb1_06, ms3, mb1_07, mb1_08, mb1_09, mb1_10, mb1_11, ms4, mb1_12, mb1_13, ms5, mb1_14, mb1_15, mb1_16, mb1_17);
+
+
+ d.add(m1, m2, m3);
+
+
+
+
+
+ var w1 = new qx.ui.form.Button("Open");
+
+ w1.setTop(48);
+ w1.setLeft(20);
+
+ w1.addEventListener("click", function(e)
+ {
+ if (m1.isSeeable())
+ {
+ m1.hide();
+ }
+ else
+ {
+ var el = this.getElement();
+
+ m1.setLeft(qx.html.Location.getPageBoxLeft(el));
+ m1.setTop(qx.html.Location.getPageBoxBottom(el));
+
+ m1.show();
+ };
+
+ e.setPropagationStopped(true);
+ });
+
+ w1.addEventListener("mousedown", function(e)
+ {
+ e.setPropagationStopped(true);
+ });
+
+
+ d.add(w1);
+
+
+
+
+
+ // Icon Themes
+ qx.manager.object.ImageManager.getInstance().createThemeList(d, 180, 48);
+
+ // Color Themes
+ qx.manager.object.ColorManager.getInstance().createThemeList(d, 380, 48);
+
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Menu_2.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Menu_2.html
new file mode 100644
index 0000000000..bc43c2fbaf
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Menu_2.html
@@ -0,0 +1,205 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>qx.ui.menu.Menu Implementation.</p>
+ <p>Added qx.client.Command support tests.</p>
+ <p>Create the menu instances on the first opening.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var q1 = new qx.client.Command("Ctrl+Z");
+ q1.addEventListener("execute", function(e) {
+ alert("Undo");
+ });
+
+ var q2 = new qx.client.Command("Ctrl+Y");
+ q2.addEventListener("execute", function(e) {
+ alert("Redo");
+ });
+
+ var q3 = new qx.client.Command("Ctrl+X");
+ q3.addEventListener("execute", function(e) {
+ alert("Cut");
+ });
+
+ var q4 = new qx.client.Command("Ctrl+C");
+ q4.addEventListener("execute", function(e) {
+ alert("Copy");
+ });
+
+ var q5 = new qx.client.Command("Ctrl+V");
+ q5.addEventListener("execute", function(e) {
+ alert("Paste");
+ });
+
+ var q6 = new qx.client.Command("Del");
+ q6.addEventListener("execute", function(e) {
+ alert("Delete");
+ });
+
+ var q7 = new qx.client.Command("Ctrl+A");
+ q7.addEventListener("execute", function(e) {
+ alert("Select All");
+ });
+
+ var q8 = new qx.client.Command("Ctrl+F");
+ q8.addEventListener("execute", function(e) {
+ alert("Search");
+ });
+
+ var q9 = new qx.client.Command("Ctrl+G");
+ q9.addEventListener("execute", function(e) {
+ alert("Search Again");
+ });
+
+ var q10 = new qx.client.Command();
+ q10.addEventListener("execute", function(e) {
+ alert("Syntax Highlighting");
+ });
+
+ var q11 = new qx.client.Command("Esc");
+ q11.addEventListener("execute", function(e) {
+ alert("Escape");
+ });
+
+ var q12 = new qx.client.Command("Space");
+ q12.addEventListener("execute", function(e) {
+ alert("Space");
+ });
+
+
+ var m1, m2, m3;
+
+ function createMenus()
+ {
+ m2 = new qx.ui.menu.Menu;
+
+ var mb2_01 = new qx.ui.menu.Button("New Window");
+ var mb2_02 = new qx.ui.menu.Button("Overlapping");
+ var mb2_03 = new qx.ui.menu.Button("Split Vertical");
+ var mb2_04 = new qx.ui.menu.Button("Split Horizontal");
+ var mb2_05 = new qx.ui.menu.Button("Next Window");
+ var mb2_06 = new qx.ui.menu.Button("Previous Window");
+
+ m2.add(mb2_01, mb2_02, mb2_03, mb2_04, mb2_05, mb2_06);
+
+
+
+
+ m3 = new qx.ui.menu.Menu;
+
+ var mb3_01 = new qx.ui.menu.Button("Tahoma, 11pt");
+ var mb3_02 = new qx.ui.menu.Button("Tahoma, 12pt");
+ var mb3_03 = new qx.ui.menu.Button("Tahoma, 13pt");
+ var mb3_04 = new qx.ui.menu.Button("Tahoma, 14pt");
+ var mb3_05 = new qx.ui.menu.Button("Tahoma, 15pt");
+
+ m3.add(mb3_01, mb3_02, mb3_03, mb3_04, mb3_05);
+
+
+
+ m1 = new qx.ui.menu.Menu;
+
+ var mb1_01 = new qx.ui.menu.Button("View/Lists", null, q12);
+ var mb1_02 = new qx.ui.menu.Button("Syntax Highlighting", null, q10);
+ var ms1 = new qx.ui.menu.Separator();
+ var mb1_03 = new qx.ui.menu.Button("Window Font", null, q11);
+ var mb1_04 = new qx.ui.menu.Button("Printer Font", null, null, m3);
+ var ms2 = new qx.ui.menu.Separator();
+ var mb1_05 = new qx.ui.menu.Button("Undo", null, q1);
+ var mb1_06 = new qx.ui.menu.Button("Redo", null, q2);
+ var ms3 = new qx.ui.menu.Separator();
+ var mb1_07 = new qx.ui.menu.Button("Cut", "icon/16/actions/edit-cut.png", q3);
+ var mb1_08 = new qx.ui.menu.Button("Copy", "icon/16/actions/edit-copy.png", q4);
+ var mb1_09 = new qx.ui.menu.Button("Paste", "icon/16/actions/edit-paste.png", q5);
+ var mb1_10 = new qx.ui.menu.Button("Delete", "icon/16/actions/edit-delete.png", q6);
+ var mb1_11 = new qx.ui.menu.Button("Select All", null, q7);
+ var ms4 = new qx.ui.menu.Separator();
+ var mb1_12 = new qx.ui.menu.Button("Search", null, q8);
+ var mb1_13 = new qx.ui.menu.Button("Search Again", null, q9);
+ var ms5 = new qx.ui.menu.Separator();
+ var mb1_14 = new qx.ui.menu.Button("View", null, null, m2);
+ var mb1_15 = new qx.ui.menu.Button("Editor Settings...");
+ var mb1_16 = new qx.ui.menu.Button("Editor Plugins");
+ var mb1_17 = new qx.ui.menu.Button("Framework Settings");
+
+ m1.add(mb1_01, mb1_02, ms1, mb1_03, mb1_04, ms2, mb1_05, mb1_06, ms3, mb1_07, mb1_08, mb1_09, mb1_10, mb1_11, ms4, mb1_12, mb1_13, ms5, mb1_14, mb1_15, mb1_16, mb1_17);
+
+
+ d.add(m1, m2, m3);
+ };
+
+
+
+
+
+ var w1 = new qx.ui.form.Button("Open");
+
+ w1.setTop(48);
+ w1.setLeft(20);
+
+ w1.addEventListener("click", function(e)
+ {
+ if (!m1) {
+ createMenus();
+ };
+
+ if (m1.isSeeable())
+ {
+ m1.hide();
+ }
+ else
+ {
+ var el = this.getElement();
+
+ m1.setLeft(qx.html.Location.getPageBoxLeft(el));
+ m1.setTop(qx.html.Location.getPageBoxBottom(el));
+
+ m1.show();
+ };
+
+ e.setPropagationStopped(true);
+ });
+
+ w1.addEventListener("mousedown", function(e)
+ {
+ e.setPropagationStopped(true);
+ });
+
+
+ d.add(w1);
+
+
+
+
+
+
+
+
+
+ // Icon Themes
+ qx.manager.object.ImageManager.getInstance().createThemeList(d, 180, 48);
+
+ // Color Themes
+ qx.manager.object.ColorManager.getInstance().createThemeList(d, 380, 48);
+
+
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Node_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Node_1.html
new file mode 100644
index 0000000000..a19a9a7b53
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Node_1.html
@@ -0,0 +1,39 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>qx.ui.embed.NodeEmbed makes a dom node a widget.</p>
+ </div>
+
+ <div id="text1" style="display:none">Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat. Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis at vero et accumsan et iusto odio dignissim qui <strong>qooxdoo</strong> blandit praesent luptatum zzril delenit augue duis dolore te feugait nulla facilisi. Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat. Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis at vero et accumsan et iusto odio dignissim qui blandit praesent luptatum zzril delenit augue duis dolore te feugait nulla facilisi. Nam liber tempor cum soluta nobis eleifend option congue nihil imperdiet doming id quod mazim placerat facer possim assum.</div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var n = new qx.ui.embed.NodeEmbed("text1");
+
+ n.setLocation(20, 48);
+ n.setRight(335);
+ n.setBottom(48);
+ n.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ n.setBackgroundColor("white");
+ n.setColor("blue");
+ n.setPadding(10);
+
+ d.add(n);
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Popups_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Popups_1.html
new file mode 100644
index 0000000000..07c1204cc3
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Popups_1.html
@@ -0,0 +1,106 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Test for the qx.ui.popup.Popup widget. qx.ui.popup.Popups are planned as the source constructor for tooltips, menus, ...</p>
+ <p>There is also a qx.manager.object.PopupManager which hides all registered qx.ui.popup.Popup instances which are configured to auto hide.
+ This is a nice method to omit to show more than one qx.ui.popup.Popup together (omit multiple QxTooltips, ...).</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+
+ var w1 = new qx.ui.form.Button("Press");
+ with(w1)
+ {
+ setTop(48);
+ setLeft(20);
+ setBackgroundColor(new qx.renderer.color.Color("#BDD2EF"));
+ setWidth(100);
+ setHeight(100);
+ setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ setHorizontalAlign("center");
+ };
+ d.add(w1);
+
+
+ var w2 = new qx.ui.form.Button("Press");
+ with(w2)
+ {
+ setTop(48);
+ setLeft(140);
+ setBackgroundColor(new qx.renderer.color.Color("#D1DFAD"));
+ setWidth(100);
+ setHeight(100);
+ setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ setHorizontalAlign("center");
+ };
+ d.add(w2);
+
+
+
+
+
+
+
+
+ var p1 = new qx.ui.popup.Popup;
+ d.add(p1);
+
+ var a1 = new qx.ui.basic.Atom("Hello World #1", "icon/16/apps/graphics-image-viewer.png");
+ p1.add(a1);
+
+ with(p1)
+ {
+ setBackgroundColor(new qx.renderer.color.Color("#FFFAD3"));
+ setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ setPadding(2, 4);
+ };
+
+ w1.addEventListener("click", function(e)
+ {
+ p1.setTop(e.getPageY() + 3);
+ p1.setLeft(e.getPageX() + 3);
+ p1.show();
+ p1.bringToFront();
+ });
+
+
+
+ var p2 = new qx.ui.popup.Popup;
+ d.add(p2);
+
+ var a2 = new qx.ui.basic.Atom("Hello World #2", "icon/32/apps/accessories-clock.png");
+ p2.add(a2);
+
+ with(p2)
+ {
+ setBackgroundColor(new qx.renderer.color.Color("#DFFAD3"));
+ setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ setPadding(2, 4);
+ };
+
+ w2.addEventListener("click", function(e)
+ {
+ p2.setTop(e.getPageY() + 3);
+ p2.setLeft(e.getPageX() + 3);
+ p2.show();
+ p2.bringToFront();
+ });
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Popups_2.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Popups_2.html
new file mode 100644
index 0000000000..b4d4e8c585
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Popups_2.html
@@ -0,0 +1,102 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Test for the qx.ui.popup.Popup widget. qx.ui.popup.Popups are planned as the source constructor for tooltips, menus, ...</p>
+ <p>There is also a qx.manager.object.PopupManager which hides all registered qx.ui.popup.Popup instances which are configured to auto hide.
+ This is a nice method to omit to show more than one qx.ui.popup.Popup together (omit multiple QxTooltips, ...).</p>
+ <p>In this example we use a qx.ui.popup.PopupAtom. This is a popup with an automatically included qx.ui.basic.Atom, which
+ allowes you to easily use it for messages to the user or something like this.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+
+ var w1 = new qx.ui.form.Button("Press");
+ with(w1)
+ {
+ setTop(48);
+ setLeft(20);
+ setBackgroundColor(new qx.renderer.color.Color("#BDD2EF"));
+ setWidth(100);
+ setHeight(100);
+ setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ setHorizontalAlign("center");
+ };
+ d.add(w1);
+
+
+ var w2 = new qx.ui.form.Button("Press");
+ with(w2)
+ {
+ setTop(48);
+ setLeft(140);
+ setBackgroundColor(new qx.renderer.color.Color("#D1DFAD"));
+ setWidth(100);
+ setHeight(100);
+ setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ setHorizontalAlign("center");
+ };
+ d.add(w2);
+
+
+
+
+
+
+
+
+ var p1 = new qx.ui.popup.PopupAtom("Hello World #1", "icon/16/apps/graphics-image-viewer.png");
+ d.add(p1);
+
+ with(p1)
+ {
+ setBackgroundColor(new qx.renderer.color.Color("#FFFAD3"));
+ setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ setPadding(2, 4);
+ };
+
+ w1.addEventListener("click", function(e)
+ {
+ p1.setTop(e.getPageY() + 3);
+ p1.setLeft(e.getPageX() + 3);
+ p1.show();
+ p1.bringToFront();
+ });
+
+
+
+ var p2 = new qx.ui.popup.PopupAtom("Hello World #2", "icon/32/apps/accessories-clock.png");
+ d.add(p2);
+
+ with(p2)
+ {
+ setBackgroundColor(new qx.renderer.color.Color("#DFFAD3"));
+ setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ setPadding(2, 4);
+ };
+
+ w2.addEventListener("click", function(e)
+ {
+ p2.setTop(e.getPageY() + 3);
+ p2.setLeft(e.getPageX() + 3);
+ p2.show();
+ p2.bringToFront();
+ });
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/RPC_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/RPC_1.html
new file mode 100644
index 0000000000..69744f4dd6
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/RPC_1.html
@@ -0,0 +1,116 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+ <script type="text/javascript" src=".qxrpc"></script>
+ <!-- With the above script, the service URL for a J2EE application can be
+ automatically determined, no matter on what path it's deployed. -->
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p><strong>Only works together with a RPC backend!</strong></p>
+ <p>Test for RPC functionality.</p>
+ <p>
+ This test calls a simple echo-style service on the server. The server
+ method accepts a string and sends back a string that says
+ "Client said: [input string]".
+ </p>
+ </div>
+
+ <script type="text/javascript">
+// qx.Settings.setCustomOfClass("qx.io.remote.Exchange", "enableDebug", true);
+ qx.Settings.setCustomOfClass("qx.io.Json", "enableDebug", true);
+
+ qx.core.Init.getInstance().defineMain(function() {
+ var layout1 = new qx.ui.layout.VerticalBoxLayout();
+ layout1.setTop(40);
+ layout1.setLeft(20);
+ layout1.setSpacing(4);
+
+ var async = new qx.ui.form.CheckBox("Asynchronous (must be checked if cross-domain is selected)");
+ layout1.add(async);
+
+ var crossDomain = new qx.ui.form.CheckBox("Cross Domain");
+ layout1.add(crossDomain);
+
+ layout1.add(new qx.ui.basic.Label("URL:"));
+ var defaultURL = qx.io.remote.Rpc.makeServerURL();
+ if (defaultURL == null) {
+ defaultURL = "/services/";
+ }
+ var url = new qx.ui.form.TextField(defaultURL);
+ layout1.add(url);
+
+ layout1.add(new qx.ui.basic.Label("Service:"));
+ var service = new qx.ui.form.TextField("qooxdoo.test");
+ layout1.add(service);
+
+ layout1.add(new qx.ui.basic.Label("Method:"));
+ var method = new qx.ui.form.TextField("echo");
+ layout1.add(method);
+
+ var layout2 = new qx.ui.layout.HorizontalBoxLayout();
+ layout2.setHeight("auto");
+ layout2.setVerticalChildrenAlign("middle");
+ layout2.setSpacing(4);
+ var message = new qx.ui.form.TextField("Hello");
+ message.setWidth(200);
+ layout2.add(message);
+ var send = new qx.ui.form.Button("Send to server");
+ layout2.add(send);
+ var abort = new qx.ui.form.Button("Abort");
+ abort.setEnabled(false);
+ layout2.add(abort);
+ layout1.add(layout2);
+
+ // We'll be setting url and service upon execute; no need to do it now.
+ var rpc = new qx.io.remote.Rpc();
+ rpc.setTimeout(10000);
+ var mycall = null;
+
+ send.addEventListener("execute", function() {
+ // Allow the user to reset the URL and Service on each call
+ rpc.setUrl(url.getValue());
+ rpc.setServiceName(service.getValue());
+ rpc.setCrossDomain(crossDomain.isChecked());
+
+ if (async.isChecked()) {
+ send.setEnabled(false);
+ abort.setEnabled(true);
+ mycall = rpc.callAsync(function(result, ex, id) {
+ mycall = null;
+ if (ex == null) {
+ alert("Async(" + id + ") result: " + result);
+ } else {
+ alert("Async(" + id + ") exception: " + ex);
+ }
+ send.setEnabled(true);
+ abort.setEnabled(false);
+ }, method.getValue(), message.getValue());
+ } else {
+ try {
+ var result = rpc.callSync(method.getValue(), message.getValue());
+ alert("Sync result: " + result);
+ } catch (ex) {
+ alert("Sync exception: " + ex);
+ }
+ }
+ });
+
+ abort.addEventListener("execute", function() {
+ rpc.abort(mycall);
+ });
+
+ var d = qx.ui.core.ClientDocument.getInstance();
+ d.add(layout1);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/RPC_2.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/RPC_2.html
new file mode 100644
index 0000000000..b00fc4d7b7
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/RPC_2.html
@@ -0,0 +1,134 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+ <script type="text/javascript" src=".qxrpc"></script>
+ <!-- With the above script, the service URL for a J2EE application can be
+ automatically determined, no matter on what path it's deployed. -->
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p><strong>Only works together with a RPC backend!</strong></p>
+ <p>Test for RPC functionality.</p>
+ <p>
+ This tests the ability to issue multiple asynchronous RPC calls to the
+ same service/method, and determine from which request we have received a
+ response. We issue multiple 'sleep' calls, for decreasing amounts of
+ time, and ensure that we can associate the resonses from the
+ later-issued requests to the earlier-received responses.
+ </p>
+ </div>
+
+ <script type="text/javascript">
+// qx.Settings.setCustomOfClass("qx.io.remote.Exchange", "enableDebug", true);
+ qx.Settings.setCustomOfClass("qx.io.Json", "enableDebug", true);
+
+ qx.core.Init.getInstance().defineMain(function() {
+ var layout1 = new qx.ui.layout.VerticalBoxLayout();
+ layout1.setTop(40);
+ layout1.setLeft(20);
+ layout1.setSpacing(4);
+
+ /*
+ * Sigh. Both IE and Firefox follow (too strictly) RFC2616 and limit
+ * the number of simultaneous asyncronous HTTP requests to 2. We'll
+ * allow testing just 2 simultaneous requests or issuing 6 simultaneous
+ * requests. In the former case, we'll get expected results. In the
+ * latter, we'll see two at a time being processed.
+ *
+ * Note that this applies to both XmlHTTPTransport and IframeTransport.
+ * It is an HTTP limitation, not a limitation of a particular method of
+ * issuing a request.
+ */
+ var tooMany = new qx.ui.form.CheckBox("Issue more requests than IE's and Firefox's implementations of HTTP will process simultaneously");
+ layout1.add(tooMany);
+
+ var crossDomain = new qx.ui.form.CheckBox("Cross Domain");
+ layout1.add(crossDomain);
+
+ layout1.add(new qx.ui.basic.Label("URL:"));
+ var defaultURL = qx.io.remote.Rpc.makeServerURL();
+ if (defaultURL == null) {
+ defaultURL = "/services/";
+ }
+ var url = new qx.ui.form.TextField(defaultURL);
+ layout1.add(url);
+
+ layout1.add(new qx.ui.basic.Label("Service:"));
+ var service = new qx.ui.form.TextField("qooxdoo.test");
+ layout1.add(service);
+
+ var layout2 = new qx.ui.layout.HorizontalBoxLayout();
+ layout2.setHeight("auto");
+ layout2.setVerticalChildrenAlign("middle");
+ layout2.setSpacing(4);
+ var start = new qx.ui.form.Button("Start Test");
+ layout2.add(start);
+ var abort = new qx.ui.form.Button("Abort");
+ layout2.add(abort);
+ layout1.add(layout2);
+
+ // ensure there's room in the queue for all of our requests
+ qx.io.remote.RequestQueue.getInstance().setMaxConcurrentRequests(8);
+
+ // We'll be setting url and service upon execute; no need to do it now.
+ var rpc = new qx.io.remote.Rpc();
+ rpc.setTimeout(60000);
+ var mycall;
+ var mycalls = [];
+
+ start.addEventListener("execute", function() {
+ t0 = new Date().getTime();
+
+ rpc.setCrossDomain(crossDomain.isChecked());
+
+ rpc.setUrl(url.getValue());
+ rpc.setServiceName(service.getValue());
+
+ var seqnum;
+ for (i=(tooMany.isChecked() ? 30 : 10); i > 0; i-=5) {
+ /*
+ * Always issue an asynchronous request! Issuing a synchronous
+ * request can lock up the entire browser until a response is
+ * received. Bad browser developers! Bad!
+ */
+ mycall = rpc.callAsync(function(result, ex, seqnum) {
+ mycalls[seqnum] = null;
+ t = new Date().getTime() - t0;
+ if (ex == null) {
+ layout1.warn(t + ": response " + seqnum + ": " + result);
+ } else {
+ layout1.warn(t + ": exception " + seqnum + ": " + ex);
+ }
+ }, "sleep", i.toString()); // FIXME: Why is this sent as a string?
+
+ t = new Date().getTime() - t0;
+ seqnum = mycall.getSequenceNumber();
+ mycalls[seqnum] = mycall;
+ layout1.warn(t + ": request " + seqnum + " = " + i.toString());
+ }
+ });
+
+ abort.addEventListener("execute", function() {
+ for (seqnum in mycalls) {
+ if (mycalls[seqnum] !== null) {
+ rpc.abort(mycalls[seqnum]);
+ mycalls[seqnum] = null;
+ }
+ }
+ mycalls = [];
+ });
+
+ var d = qx.ui.core.ClientDocument.getInstance();
+ d.add(layout1);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/RPC_3.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/RPC_3.html
new file mode 100644
index 0000000000..5e9d61660a
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/RPC_3.html
@@ -0,0 +1,240 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+ <script type="text/javascript" src=".qxrpc"></script>
+ <!-- With the above script, the service URL for a J2EE application can be
+ automatically determined, no matter on what path it's deployed. -->
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Test for RPC functionality.</p>
+ <p>
+ This test calls a whole set of functions to test each of the primitive
+ data types. The comparison results should all end with ": true", and
+ the last test generates an Application Error (#1000). No other test
+ generates that error, so receiving it means the complete set of tests
+ was run.
+ </p>
+ <p>
+ These functions all use the synchronous interface. You should not use
+ the synchronous interface because with some browsers, the entire browser
+ environment locks up during a synchronous call. If the server hangs for
+ a minute or two, so will the browser! You have been warned.
+ </p>
+ </div>
+
+ <script type="text/javascript">
+// qx.Settings.setCustomOfClass("qx.io.remote.Exchange", "enableDebug", true);
+ qx.Settings.setCustomOfClass("qx.io.Json", "enableDebug", true);
+
+ qx.core.Init.getInstance().defineMain(function() { var layout1 = new
+ qx.ui.layout.VerticalBoxLayout(); layout1.setTop(40); layout1.setLeft(20);
+ layout1.setSpacing(4);
+
+ layout1.add(new qx.ui.basic.Label("URL:"));
+ var defaultURL = qx.io.remote.Rpc.makeServerURL();
+ if (defaultURL == null) {
+ defaultURL = "/services/";
+ }
+ var url = new qx.ui.form.TextField(defaultURL);
+ layout1.add(url);
+
+ layout1.add(new qx.ui.basic.Label("Service path:"));
+ var service = new qx.ui.form.TextField("qooxdoo.test");
+ layout1.add(service);
+
+ var start = new qx.ui.form.Button("Start test");
+ layout1.add(start);
+
+ var rpc;
+ var mycall = null;
+ var test;
+
+ start.addEventListener("execute", function() {
+ try
+ {
+ var rpc = new qx.io.remote.Rpc(url.getValue(), service.getValue());
+ rpc.setTimeout(10000);
+
+ test = "getCurrentTimestamp";
+ layout1.warn("Calling '" + test + "'");
+ result = rpc.callSync(test);
+ layout1.warn("result: now=" + result.now);
+ layout1.warn("result: jsonDate=" + result.json.toString());
+
+ test = "getInteger";
+ layout1.warn("Calling '" + test + "'");
+ var result = rpc.callSync(test);
+ layout1.warn("result: {" + result + "}");
+ layout1.warn("Returns a number, got " + typeof(result) + ": " + (typeof(result) == "number" && isFinite(result) ? "true" : "false"));
+
+ test = "isInteger";
+ layout1.warn("Calling '" + test + "'");
+ result = rpc.callSync(test, 1);
+ layout1.warn("result: {" + result + "}");
+ layout1.warn("Returns an integer: " + result);
+
+ test = "getString";
+ layout1.warn("Calling '" + test + "'");
+ result = rpc.callSync(test);
+ layout1.warn("result: {" + result + "}");
+ layout1.warn("Returns a string: " + (typeof(result) == "string"));
+
+ test = "isString";
+ layout1.warn("Calling '" + test + "'");
+ result = rpc.callSync(test, "Hello World");
+ layout1.warn("result: {" + result + "}");
+ layout1.warn("Returns a string: " + result);
+
+ test = "getNull";
+ layout1.warn("Calling '" + test + "'");
+ var result = rpc.callSync(test);
+ layout1.warn("result: {" + result + "}");
+ layout1.warn("Returns null: " + (typeof(result) == "object" && result === null ? "true" : "false"));
+
+ test = "isNull";
+ layout1.warn("Calling '" + test + "'");
+ result = rpc.callSync(test, null);
+ layout1.warn("result: {" + result + "}");
+ layout1.warn("Returns null: " + result);
+
+ test = "getArrayInteger";
+ layout1.warn("Calling '" + test + "'");
+ result = rpc.callSync(test);
+ layout1.warn("result: {" + result + "}");
+ layout1.warn("Returns an array: " + ((typeof(result) == "object") && (result instanceof Array)));
+
+ test = "getArrayString";
+ layout1.warn("Calling '" + test + "'");
+ result = rpc.callSync(test);
+ layout1.warn("result: {" + result + "}");
+ layout1.warn("Returns an array: " + ((typeof(result) == "object") && (result instanceof Array)));
+
+ var dataArray = new Array(5);
+
+ for (i=0; i<5; i++)
+ {
+ dataArray[i] = i;
+ };
+
+ test = "isArray";
+ layout1.warn("Calling '" + test + "'");
+ result = rpc.callSync(test, dataArray);
+ layout1.warn("result: {" + result + "}");
+
+ dataArray = new Array(5);
+
+ for (i=0; i<5; i++)
+ {
+ dataArray[i] = "Element " + i;
+ };
+
+ test = "isArray";
+ layout1.warn("Calling '" + test + "'");
+ result = rpc.callSync(test, dataArray);
+ layout1.warn("result: {" + result + "}");
+
+ test = "getFloat";
+ layout1.warn("Calling '" + test + "'");
+ result = rpc.callSync(test);
+ layout1.warn("result: {" + result + "}");
+ layout1.warn("Returns a float: " + (typeof(result) == "number"));
+
+ test = "getObject";
+ layout1.warn("Calling '" + test + "'");
+ result = rpc.callSync(test);
+ layout1.warn("result: {" + result + "}");
+ layout1.warn("Returns an object: " + (typeof(result) == "object"));
+
+ test = "isObject";
+ layout1.warn("Calling '" + test + "'");
+ obj = new Object();
+ obj.s = "Hi there.";
+ obj.n = 23;
+ obj.o = new Object();
+ obj.o.s = "This is a test.";
+ result = rpc.callSync(test, obj);
+ layout1.warn("result: {" + result.toString() + "}");
+ layout1.warn("Returns an object: " + result);
+
+ test = "getTrue";
+ layout1.warn("Calling '" + test + "'");
+ result = rpc.callSync(test);
+ layout1.warn("result: {" + result.toString() + "}");
+ layout1.warn("Returns a boolean = true: " + (typeof(result) == "boolean"));
+
+ test = "getFalse";
+ layout1.warn("Calling '" + test + "'");
+ result = rpc.callSync(test);
+ layout1.warn("result: {" + result.toString() + "}");
+ layout1.warn("Returns a boolean = false: " + (typeof(result) == "boolean"));
+
+ test = "isBoolean";
+ layout1.warn("Calling '" + test + "'");
+ result = rpc.callSync(test, true);
+ layout1.warn("result: {" + result.toString() + "}");
+ layout1.warn("Returns a boolean: " + result);
+
+ test = "isBoolean";
+ layout1.warn("Calling '" + test + "'");
+ result = rpc.callSync(test, false);
+ layout1.warn("result: {" + result.toString() + "}");
+ layout1.warn("Returns a boolean: " + result);
+
+ Date.prototype.classname = "Date";
+ var date = new Date();
+ test = "getParam";
+ layout1.warn("Calling '" + test + "'");
+ result = rpc.callSync(test, date);
+ layout1.warn("result: {" + result + "}");
+ layout1.warn("Returns a date object, got " + (result.classname == date.classname));
+ layout1.warn("Returns matching time " + date.getTime() + " = " + result.getTime() + " :" + (result.getTime() == date.getTime()));
+
+ dataArray = new Array();
+ dataArray[0] = true;
+ dataArray[1] = false;
+ dataArray[2] = 1;
+ dataArray[3] = 1.1;
+ dataArray[4] = "Hello World";
+ dataArray[5] = new Array(5);
+ dataArray[6] = new Object();
+ dataArray[7] = new Date();
+
+ test = "getParams";
+ layout1.warn("Calling '" + test + "'");
+ result = rpc.callSync(test, dataArray[0], dataArray[1], dataArray[2], dataArray[3], dataArray[4], dataArray[5], dataArray[6], dataArray[7]);
+ layout1.warn("result: {" + result + "}");
+
+ for (i=0; i< dataArray.length; i++)
+ {
+ layout1.warn("Returned parameter (" + i + ") value '" + result[i] + "' matches '" + dataArray[i] + "': " + (result[i].toString() == dataArray[i].toString()));
+ layout1.warn("Returned parameter (" + i + ") type '" + typeof(result[i]) + "' matches '" + typeof(dataArray[i]) + "': " + (typeof(result[i]) == typeof(dataArray[i])));
+ };
+
+ test = "getError";
+ layout1.warn("Calling '" + test + "'");
+ result = rpc.callSync(test);
+ // should never get here; we should receive an exception
+ layout1.warn("ERROR: Should have received an exception! Got: " + result);
+
+ }
+ catch (ex)
+ {
+ alert("Exception on test " + test + ": " + ex);
+ }
+ });
+
+ var d = qx.ui.core.ClientDocument.getInstance();
+ d.add(layout1);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/RPC_4.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/RPC_4.html
new file mode 100644
index 0000000000..3ceb52f358
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/RPC_4.html
@@ -0,0 +1,470 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+ <script type="text/javascript" src=".qxrpc"></script>
+ <!-- With the above script, the service URL for a J2EE application can be
+ automatically determined, no matter on what path it's deployed. -->
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p><strong>Only works together with a RPC backend!</strong></p>
+ <p>Test for RPC functionality.</p>
+ <p>
+ This test calls a whole set of functions to test each of the primitive
+ data types. The comparison results should all end with ": true", and
+ the last test generates an Application Error (#1000). No other test
+ generates that error, so receiving it means the complete set of tests
+ was run.
+ </p>
+ <p>
+ These functions all use the asynchronous interface. This is the
+ interface that your applications should use. See the warning in
+ RPC_3.html regarding use of the synchronous interface.
+ </p>
+ </div>
+
+ <script type="text/javascript">
+ qx.Settings.setCustomOfClass("qx.io.Json", "enableDebug", true);
+
+ qx.core.Init.getInstance().defineMain(function() {
+ var layout1 = new qx.ui.layout.VerticalBoxLayout();
+ layout1.setTop(40);
+ layout1.setLeft(20);
+ layout1.setSpacing(4);
+
+ var crossDomain = new qx.ui.form.CheckBox("Cross Domain");
+ layout1.add(crossDomain);
+
+ layout1.add(new qx.ui.basic.Label("URL:"));
+ var defaultURL = qx.io.remote.Rpc.makeServerURL();
+ if (defaultURL == null) {
+ defaultURL = "/services/";
+ }
+ var url = new qx.ui.form.TextField(defaultURL);
+ layout1.add(url);
+
+ layout1.add(new qx.ui.basic.Label("Service path:"));
+ var service = new qx.ui.form.TextField("qooxdoo.test");
+ layout1.add(service);
+
+ var start = new qx.ui.form.Button("Start test");
+ layout1.add(start);
+
+ var mycall = null;
+ var test;
+ var testNum;
+
+ start.addEventListener("execute", function() {
+ var obj;
+ var date;
+ var dataArray;
+
+ /*
+ * Create an array of each of the tests. Each array element is itself
+ * an array of two function: the first to issue the test request, and
+ * the second to validate the result.
+ */
+ var tests =
+ [
+ [
+ function()
+ {
+ test = "getCurrentTimestamp";
+ layout1.warn("Calling '" + test + "'");
+ mycall = rpc.callAsync(handler, test);
+ },
+
+ function(result)
+ {
+ layout1.warn("result: now=" + result.now);
+ layout1.warn("result: jsonDate=" + result.json.toString());
+ }
+ ],
+
+ [
+ function()
+ {
+ test = "getInteger";
+ layout1.warn("Calling '" + test + "'");
+ mycall = rpc.callAsync(handler, test);
+ },
+
+ function(result)
+ {
+ layout1.warn("result: {" + result + "}");
+ layout1.warn("Returns a number, got " + typeof(result) + ": " + (typeof(result) == "number" && isFinite(result) ? "true" : "false"));
+ }
+ ],
+
+ [
+ function()
+ {
+ test = "isInteger";
+ layout1.warn("Calling '" + test + "'");
+ mycall = rpc.callAsync(handler, test, 1);
+ },
+
+ function(result)
+ {
+ layout1.warn("result: {" + result + "}");
+ layout1.warn("Returns an integer: " + result);
+ }
+ ],
+
+ [
+ function()
+ {
+ test = "getString";
+ layout1.warn("Calling '" + test + "'");
+ mycall = rpc.callAsync(handler, test);
+ },
+
+ function(result)
+ {
+ layout1.warn("result: {" + result + "}");
+ layout1.warn("Returns a string: " + (typeof(result) == "string"));
+ }
+ ],
+
+ [
+ function()
+ {
+ test = "isString";
+ layout1.warn("Calling '" + test + "'");
+ mycall = rpc.callAsync(handler, test, "Hello World");
+ },
+
+ function(result)
+ {
+ layout1.warn("result: {" + result + "}");
+ layout1.warn("Returns a string: " + result);
+ }
+ ],
+
+ [
+ function()
+ {
+ test = "getNull";
+ layout1.warn("Calling '" + test + "'");
+ var mycall = rpc.callAsync(handler, test);
+ },
+
+ function(result)
+ {
+ layout1.warn("result: {" + result + "}");
+ layout1.warn("Returns null: " + (typeof(result) == "object" && mycall === null ? "true" : "false"));
+ }
+ ],
+
+ [
+ function()
+ {
+ test = "isNull";
+ layout1.warn("Calling '" + test + "'");
+ mycall = rpc.callAsync(handler, test, null);
+ },
+
+ function(result)
+ {
+ layout1.warn("result: {" + result + "}");
+ layout1.warn("Returns null: " + result);
+ }
+ ],
+
+ [
+ function()
+ {
+ test = "getArrayInteger";
+ layout1.warn("Calling '" + test + "'");
+ mycall = rpc.callAsync(handler, test);
+ },
+
+ function(result)
+ {
+ layout1.warn("result: {" + result + "}");
+ layout1.warn("Returns an array: " + ((typeof(result) == "object") && (result instanceof Array)));
+ }
+ ],
+
+ [
+ function()
+ {
+ test = "getArrayString";
+ layout1.warn("Calling '" + test + "'");
+ mycall = rpc.callAsync(handler, test);
+ },
+
+ function(result)
+ {
+ layout1.warn("result: {" + result + "}");
+ layout1.warn("Returns an array: " + ((typeof(result) == "object") && (result instanceof Array)));
+ }
+ ],
+
+ [
+ function()
+ {
+ dataArray = new Array(5);
+
+ for (i=0; i<5; i++)
+ {
+ dataArray[i] = i;
+ };
+
+ test = "isArray";
+ layout1.warn("Calling '" + test + "'");
+ mycall = rpc.callAsync(handler, test, dataArray);
+ },
+
+ function(result)
+ {
+ layout1.warn("result: {" + result + "}");
+ layout1.warn("Returns an array: " + result);
+ }
+ ],
+
+ [
+ function()
+ {
+ dataArray = new Array(5);
+
+ for (i=0; i<5; i++)
+ {
+ dataArray[i] = "Element " + i;
+ };
+
+ test = "isArray";
+ layout1.warn("Calling '" + test + "'");
+ mycall = rpc.callAsync(handler, test, dataArray);
+ },
+
+ function(result)
+ {
+ layout1.warn("result: {" + result + "}");
+ layout1.warn("Returns an array: " + result);
+ }
+ ],
+
+ [
+ function()
+ {
+ test = "getFloat";
+ layout1.warn("Calling '" + test + "'");
+ mycall = rpc.callAsync(handler, test);
+ },
+
+ function(result)
+ {
+ layout1.warn("result: {" + result + "}");
+ layout1.warn("Returns a float: " + (typeof(result) == "number"));
+ }
+ ],
+
+ [
+ function()
+ {
+ test = "getObject";
+ layout1.warn("Calling '" + test + "'");
+ mycall = rpc.callAsync(handler, test);
+ },
+
+ function(result)
+ {
+ layout1.warn("result: {" + result + "}");
+ layout1.warn("Returns an object: " + (typeof(result) == "object"));
+ }
+ ],
+
+ [
+ function()
+ {
+ test = "isObject";
+ layout1.warn("Calling '" + test + "'");
+ obj = new Object();
+ obj.s = "Hi there.";
+ obj.n = 23;
+ obj.o = new Object();
+ obj.o.s = "This is a test.";
+ mycall = rpc.callAsync(handler, test, obj);
+ },
+
+ function(result)
+ {
+ layout1.warn("result: {" + result.toString() + "}");
+ layout1.warn("Returns an object: " + result);
+ }
+ ],
+
+ [
+ function()
+ {
+ test = "isBoolean";
+ layout1.warn("Calling '" + test + "'");
+ mycall = rpc.callAsync(handler, test, false);
+ },
+
+ function(result)
+ {
+ layout1.warn("result: {" + result.toString() + "}");
+ layout1.warn("Returns a boolean: " + result);
+ }
+ ],
+
+ [
+ function()
+ {
+ test = "isBoolean";
+ layout1.warn("Calling '" + test + "'");
+ mycall = rpc.callAsync(handler, test, true);
+ },
+
+ function(result)
+ {
+ layout1.warn("result: {" + result.toString() + "}");
+ layout1.warn("Returns a boolean: " + result);
+ }
+ ],
+
+ [
+ function()
+ {
+ test = "getTrue";
+ layout1.warn("Calling '" + test + "'");
+ mycall = rpc.callAsync(handler, test);
+ },
+
+ function(result)
+ {
+ layout1.warn("result: {" + result.toString() + "}");
+ layout1.warn("Returns a boolean = true: " + (typeof(result) == "boolean"));
+ }
+ ],
+
+ [
+ function()
+ {
+ test = "getFalse";
+ layout1.warn("Calling '" + test + "'");
+ mycall = rpc.callAsync(handler, test);
+ },
+
+ function(result)
+ {
+ layout1.warn("result: {" + result.toString() + "}");
+ layout1.warn("Returns a boolean = false: " + (typeof(result) == "boolean"));
+ }
+ ],
+
+ [
+ function()
+ {
+ Date.prototype.classname = "Date";
+ date = new Date();
+ test = "getParam";
+ layout1.warn("Calling '" + test + "'");
+ mycall = rpc.callAsync(handler, test, date);
+ },
+
+ function(result)
+ {
+ layout1.warn("result: {" + result + "}");
+ layout1.warn("Returns a date object, got " + (result.classname == date.classname));
+ layout1.warn("Returns matching time " + date.getTime() + " = " + result.getTime() + " :" + (result.getTime() == date.getTime()));
+ }
+ ],
+
+ [
+ function()
+ {
+ dataArray = new Array();
+ dataArray[0] = true;
+ dataArray[1] = false;
+ dataArray[2] = 1;
+ dataArray[3] = 1.1;
+ dataArray[4] = "Hello World";
+ dataArray[5] = new Array(5);
+ dataArray[6] = new Object();
+ dataArray[7] = new Date();
+
+ test = "getParams";
+ layout1.warn("Calling '" + test + "'");
+ mycall = rpc.callAsync(handler, test, dataArray[0], dataArray[1], dataArray[2], dataArray[3], dataArray[4], dataArray[5], dataArray[6], dataArray[7]);
+ },
+
+ function(result)
+ {
+ layout1.warn("result: {" + result + "}");
+
+ for (i=0; i< dataArray.length; i++)
+ {
+ layout1.warn("Returned parameter (" + i + ") value '" + result[i] + "' matches '" + dataArray[i] + "': " + (result[i].toString() == dataArray[i].toString()));
+ layout1.warn("Returned parameter (" + i + ") type '" + typeof(result[i]) + "' matches '" + typeof(dataArray[i]) + "': " + (typeof(result[i]) == typeof(dataArray[i])));
+ };
+ }
+ ],
+
+ [
+ function()
+ {
+ test = "getError";
+ layout1.warn("Calling '" + test + "'");
+ mycall = rpc.callAsync(handler, test);
+ },
+
+ function(result)
+ {
+ // should never get here; we should receive an exception
+ layout1.warn("ERROR: Should have received an exception! Got: " + result);
+ }
+ ]
+ ];
+
+ /*
+ * This is the generic handler, used by each of the tests. It
+ * ascertains whether an exception occured and alert()s with the
+ * exception if so; otherwise it calls the result validation function
+ * and then starts the next test.
+ */
+ handler = function(result, ex, id) {
+ mycall = null;
+ if (ex !== null) {
+ alert("Async(" + id + ") exception: " + ex);
+ } else {
+ // display results of the completed test
+ tests[testNum][1](result); // [][1] = validate response
+
+ // start the next test
+ ++testNum;
+
+ // Are we done?
+ if (testNum < tests.length) {
+ // Nope. Run the next test.
+ tests[testNum][0]();
+ }
+ }
+ }
+
+ // Determine which transport to use
+ rpc = new qx.io.remote.Rpc(url.getValue(), service.getValue());
+ rpc.setTimeout(10000);
+ rpc.setCrossDomain(crossDomain.isChecked());
+
+ // start the first test
+ testNum = 0;
+ tests[testNum][0](); // [][0] = request
+ });
+
+ var d = qx.ui.core.ClientDocument.getInstance();
+ d.add(layout1);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/RPC_5.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/RPC_5.html
new file mode 100644
index 0000000000..b23cdd2c86
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/RPC_5.html
@@ -0,0 +1,95 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+ <script type="text/javascript" src=".qxrpc"></script>
+ <!-- With the above script, the service URL for a J2EE application can be
+ automatically determined, no matter on what path it's deployed. -->
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p><strong>Only works together with a RPC backend!</strong></p>
+ <p>Test for RPC functionality.</p>
+ <p>
+ This test calls remote function getParams(), passing a defined field in
+ an object, and an undefined field in an object. Depending on the
+ setting of qx.core.Settings.jsonEncodeUndefined, the undefined field
+ should or should not be sent. We also send some (ignored) server data
+ in this test, if requested.
+ </p>
+ </div>
+
+ <script type="text/javascript">
+// qx.Settings.setCustomOfClass("qx.io.remote.Exchange", "enableDebug", true);
+ qx.Settings.setCustomOfClass("qx.io.Json", "enableDebug", true);
+
+ qx.core.Init.getInstance().defineMain(function() {
+ var layout1 = new qx.ui.layout.VerticalBoxLayout();
+ layout1.setTop(40);
+ layout1.setLeft(20);
+ layout1.setSpacing(4);
+
+ var encodeUndefined = new qx.ui.form.CheckBox("Encode 'undefined' as null");
+ layout1.add(encodeUndefined);
+
+ var sendServerData = new qx.ui.form.CheckBox("Send server data");
+ layout1.add(sendServerData);
+
+ layout1.add(new qx.ui.basic.Label("URL:"));
+ var defaultURL = qx.io.remote.Rpc.makeServerURL();
+ if (defaultURL == null) {
+ defaultURL = "/services/";
+ }
+ var url = new qx.ui.form.TextField(defaultURL);
+ layout1.add(url);
+
+ layout1.add(new qx.ui.basic.Label("Service:"));
+ var service = new qx.ui.form.TextField("qooxdoo.test");
+ layout1.add(service);
+
+ var start = new qx.ui.form.Button("Start test");
+ layout1.add(start);
+
+ // We'll be setting url and service upon execute; no need to do it now.
+ var rpc = new qx.io.remote.Rpc();
+ rpc.setTimeout(10000);
+ var mycall = null;
+
+ start.addEventListener("execute", function() {
+ // Allow the user to reset the URL and Service on each call
+ rpc.setUrl(url.getValue());
+ rpc.setServiceName(service.getValue());
+ rpc.setCrossDomain(false);
+
+ if (sendServerData.isChecked()) {
+ rpc.setServerData(new Date());
+ } else {
+ rpc.setServerData(undefined);
+ }
+
+ qx.Settings.setCustomOfClass("qx.io.Json", "encodeUndefined",
+ encodeUndefined.isChecked());
+
+ try {
+ obj = new Object();
+ obj.def = "defined";
+ var result = rpc.callSync("getParams", obj.undef, obj.def);
+ alert("Sync result: " + result);
+ } catch (ex) {
+ alert("Sync exception: " + ex);
+ }
+ });
+
+ var d = qx.ui.core.ClientDocument.getInstance();
+ d.add(layout1);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/SplitPane_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/SplitPane_1.html
new file mode 100644
index 0000000000..8fd7b92af5
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/SplitPane_1.html
@@ -0,0 +1,91 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Test for Splitpane functionality with enabled live resize.</p>
+ </div>
+
+ <script type="text/javascript">
+
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var frame = new qx.ui.layout.CanvasLayout;
+ frame.setLocation(20, 48);
+ frame.setBottom(48);
+ frame.setRight(300);
+ frame.setBackgroundColor("#134275");
+ frame.setPadding(20);
+ frame.addToDocument();
+
+ // the splitpane itself
+ var splitpane = new qx.ui.splitpane.HorizontalSplitPane("1*", "2*");
+ splitpane.setEdge(0);
+ frame.add(splitpane);
+
+ // left Widget
+ var leftWidget = new qx.ui.form.TextArea("LeftWidget");
+ leftWidget.setWrap(true);
+ leftWidget.setBackgroundColor(new qx.renderer.color.Color("white"));
+ leftWidget.setWidth("100%");
+ leftWidget.setHeight("100%");
+
+ // rightWidget (another splitpane)
+ var rightWidget = new qx.ui.splitpane.VerticalSplitPane;
+ rightWidget.setHeight("100%");
+ rightWidget.setWidth("100%");
+
+ // add widgets to splitpane
+ splitpane.addLeft(leftWidget);
+ splitpane.addRight(rightWidget);
+
+
+
+ // right top widget
+ var topWidget = new qx.ui.form.TextArea("Right Top Widget");
+ topWidget.setBackgroundColor(new qx.renderer.color.Color("white"));
+ topWidget.setHeight("100%");
+ topWidget.setWidth("100%");
+
+ // right bottom widget
+ var bottomWidget = new qx.ui.embed.Iframe("http://www.qooxdoo.org");
+ bottomWidget.setHeight("100%");
+ bottomWidget.setWidth("100%");
+
+ // add widgets to right splitpane
+ rightWidget.addTop(topWidget);
+ rightWidget.addBottom(bottomWidget);
+
+
+
+
+ var toggleButton = new qx.ui.form.Button("Toggle Layout", "icon/16/actions/view-refresh.png");
+ toggleButton.setBottom(48);
+ toggleButton.setLeft(20);
+ toggleButton.addToDocument();
+ toggleButton.addEventListener("execute", function(e)
+ {
+ if (splitpane.getOrientation() == "horizontal")
+ {
+ splitpane.setOrientation("vertical");
+ rightWidget.setOrientation("horizontal");
+ }
+ else
+ {
+ splitpane.setOrientation("horizontal");
+ rightWidget.setOrientation("vertical");
+ }
+ });
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Table_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Table_1.html
new file mode 100644
index 0000000000..5a4c52aef2
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Table_1.html
@@ -0,0 +1,50 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>The default table using divs and nodeValue.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ // table model
+ var tableModel = new qx.ui.table.SimpleTableModel();
+ tableModel.setColumns([ "ID", "A number", "A date", "Boolean test" ]);
+ var rowData = [];
+ var now = new Date().getTime();
+ var dateRange = 400 * 24 * 60 * 60 * 1000; // 400 days
+ for (var row = 0; row < 100; row++) {
+ var date = new Date(now + Math.random() * dateRange - dateRange / 2);
+ rowData.push([ row, Math.random() * 10000, date, (Math.random() > 0.5) ]);
+ }
+ tableModel.setData(rowData);
+ tableModel.setColumnEditable(1, true);
+ tableModel.setColumnEditable(2, true);
+
+ // table
+ var table = new qx.ui.table.Table(tableModel);
+ with (table) {
+ set({ left:10, top:30, right:300, bottom:30, border:qx.renderer.border.BorderPresets.getInstance().thinInset });
+ setMetaColumnCounts([1, -1]);
+ getSelectionModel().setSelectionMode(qx.ui.table.SelectionModel.MULTIPLE_INTERVAL_SELECTION);
+ getTableColumnModel().setDataCellRenderer(3, new qx.ui.table.BooleanDataCellRenderer());
+ };
+
+ d.add(table);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Table_2.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Table_2.html
new file mode 100644
index 0000000000..281039465e
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Table_2.html
@@ -0,0 +1,52 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>a table using divs and Array.join.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ qx.ui.table.TablePane.USE_ARRAY_JOIN = true;
+
+ // table model
+ var tableModel = new qx.ui.table.SimpleTableModel();
+ tableModel.setColumns([ "ID", "A number", "A date", "Boolean test" ]);
+ var rowData = [];
+ var now = new Date().getTime();
+ var dateRange = 400 * 24 * 60 * 60 * 1000; // 400 days
+ for (var row = 0; row < 100; row++) {
+ var date = new Date(now + Math.random() * dateRange - dateRange / 2);
+ rowData.push([ row, Math.random() * 10000, date, (Math.random() > 0.5) ]);
+ }
+ tableModel.setData(rowData);
+ tableModel.setColumnEditable(1, true);
+ tableModel.setColumnEditable(2, true);
+
+ // table
+ var table = new qx.ui.table.Table(tableModel);
+ with (table) {
+ set({ left:10, top:30, right:300, bottom:30, border:qx.renderer.border.BorderPresets.getInstance().thinInset });
+ setMetaColumnCounts([1, -1]);
+ getSelectionModel().setSelectionMode(qx.ui.table.SelectionModel.MULTIPLE_INTERVAL_SELECTION);
+ getTableColumnModel().setDataCellRenderer(3, new qx.ui.table.BooleanDataCellRenderer());
+ };
+
+ d.add(table);
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Table_3.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Table_3.html
new file mode 100644
index 0000000000..e03cff3a1f
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Table_3.html
@@ -0,0 +1,52 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>A table using table elements and nodeValue.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ // qx.ui.table.TablePane.USE_TABLE = true;
+
+ // table model
+ var tableModel = new qx.ui.table.SimpleTableModel();
+ tableModel.setColumns([ "ID", "A number", "A date", "Boolean test" ]);
+ var rowData = [];
+ var now = new Date().getTime();
+ var dateRange = 400 * 24 * 60 * 60 * 1000; // 400 days
+ for (var row = 0; row < 100; row++) {
+ var date = new Date(now + Math.random() * dateRange - dateRange / 2);
+ rowData.push([ row, Math.random() * 10000, date, (Math.random() > 0.5) ]);
+ }
+ tableModel.setData(rowData);
+ tableModel.setColumnEditable(1, true);
+ tableModel.setColumnEditable(2, true);
+
+ // table
+ var table = new qx.ui.table.Table(tableModel);
+ with (table) {
+ set({ left:10, top:30, right:300, bottom:30, border:qx.renderer.border.BorderPresets.getInstance().thinInset });
+ setMetaColumnCounts([1, -1]);
+ getSelectionModel().setSelectionMode(qx.ui.table.SelectionModel.MULTIPLE_INTERVAL_SELECTION);
+ getTableColumnModel().setDataCellRenderer(3, new qx.ui.table.BooleanDataCellRenderer());
+ };
+
+ d.add(table);
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Table_4.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Table_4.html
new file mode 100644
index 0000000000..a8dad6ded5
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Table_4.html
@@ -0,0 +1,53 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>A table using table elements and Array.join.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ qx.ui.table.TablePane.USE_TABLE = true;
+ qx.ui.table.TablePane.USE_ARRAY_JOIN = true;
+
+ // table model
+ var tableModel = new qx.ui.table.SimpleTableModel();
+ tableModel.setColumns([ "ID", "A number", "A date", "Boolean test" ]);
+ var rowData = [];
+ var now = new Date().getTime();
+ var dateRange = 400 * 24 * 60 * 60 * 1000; // 400 days
+ for (var row = 0; row < 100; row++) {
+ var date = new Date(now + Math.random() * dateRange - dateRange / 2);
+ rowData.push([ row, Math.random() * 10000, date, (Math.random() > 0.5) ]);
+ }
+ tableModel.setData(rowData);
+ tableModel.setColumnEditable(1, true);
+ tableModel.setColumnEditable(2, true);
+
+ // table
+ var table = new qx.ui.table.Table(tableModel);
+ with (table) {
+ set({ left:10, top:30, right:300, bottom:30, border:qx.renderer.border.BorderPresets.getInstance().thinInset });
+ setMetaColumnCounts([1, -1]);
+ getSelectionModel().setSelectionMode(qx.ui.table.SelectionModel.MULTIPLE_INTERVAL_SELECTION);
+ getTableColumnModel().setDataCellRenderer(3, new qx.ui.table.BooleanDataCellRenderer());
+ };
+
+ d.add(table);
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Table_5.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Table_5.html
new file mode 100644
index 0000000000..6a7ad4d228
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Table_5.html
@@ -0,0 +1,55 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>A table having few rows.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ //qx.log.Logger.ROOT_LOGGER.addAppender(new qx.log.WindowAppender);
+
+ // table model
+ var tableModel = new qx.ui.table.SimpleTableModel();
+ tableModel.setColumns([ "ID", "A number", "A date", "Boolean test" ]);
+ var rowData = [];
+ var now = new Date().getTime();
+ var dateRange = 400 * 24 * 60 * 60 * 1000; // 400 days
+ for (var row = 0; row < 20; row++) {
+ var date = new Date(now + Math.random() * dateRange - dateRange / 2);
+ rowData.push([ row, Math.random() * 10000, date, (Math.random() > 0.5) ]);
+ }
+ tableModel.setData(rowData);
+ tableModel.setColumnEditable(1, true);
+ tableModel.setColumnEditable(2, true);
+
+ // table
+ var table = new qx.ui.table.Table(tableModel);
+ with (table) {
+ set({ left:10, top:30, right:300, bottom:30, border:qx.renderer.border.BorderPresets.getInstance().thinInset });
+ setMetaColumnCounts([1, -1]);
+ getSelectionModel().setSelectionMode(qx.ui.table.SelectionModel.MULTIPLE_INTERVAL_SELECTION);
+ getTableColumnModel().setDataCellRenderer(3, new qx.ui.table.BooleanDataCellRenderer());
+ setColumnWidth(0, 80);
+ setColumnWidth(1, 200);
+ setColumnWidth(2, 150);
+ };
+
+ d.add(table);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ToolBar_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ToolBar_1.html
new file mode 100644
index 0000000000..1d434c1211
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ToolBar_1.html
@@ -0,0 +1,227 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Introduce qx.ui.menu.Menu which opens on qx.ui.toolbar.ToolBarMenuButtons.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var tb = new qx.ui.toolbar.ToolBar;
+ with(tb)
+ {
+ setTop(48);
+ setLeft(20);
+ setRight(335);
+ };
+
+ var m1 = new qx.ui.menu.Menu;
+
+ var mb1 = new qx.ui.menu.Button("Folder");
+ var ms1 = new qx.ui.menu.Separator;
+ var mb2 = new qx.ui.menu.Button("Word Document");
+ var mb3 = new qx.ui.menu.Button("Text File");
+ var mb4 = new qx.ui.menu.Button("Image");
+
+ m1.add(mb1, ms1, mb2, mb3, mb4);
+ d.add(m1);
+
+
+ var m2 = new qx.ui.menu.Menu;
+
+ var mb5 = new qx.ui.menu.Button("Copy", "icon/16/actions/edit-copy.png");
+ var mb6 = new qx.ui.menu.Button("Move", "icon/16/actions/edit-cut.png");
+ var mb7 = new qx.ui.menu.Button("Delete", "icon/16/actions/edit-delete.png");
+
+ m2.add(mb5, mb6, mb7);
+ d.add(m2);
+
+
+
+
+ var btns1 = [
+ { type : "menu", icon : "actions/document-new", label : "New", menu : m1 },
+ { type : "menu", icon : "apps/accessories-text-editor", label : "Edit", menu : m2 }
+ ];
+
+ var btns2 = [
+ { type : "button", icon : "actions/go-up", label : "Upload" },
+ { type : "button", icon : "actions/go-down", label : "Download" }
+ ];
+
+ var btns3 = [
+ { type : "button", icon : "apps/accessories-tip", label : "Tip" },
+ { type : "button", icon : "actions/help-faq", label : "Help" }
+ ];
+
+ var bars = [ btns1, btns2, btns3 ];
+
+ function changeLayout(e) {
+ this.setShow(e.getData());
+ };
+
+ var useParts = true;
+
+
+ for (var j=0; j<bars.length; j++)
+ {
+ var btns = bars[j];
+
+ if (useParts) {
+ var tbp = new qx.ui.toolbar.Part;
+ };
+
+ for (var i=0; i<btns.length; i++)
+ {
+ var btn = btns[i];
+
+ switch(btn.type)
+ {
+ case "separator":
+ var o = new qx.ui.toolbar.Separator;
+ break;
+
+ case "menu":
+ var o = new qx.ui.toolbar.MenuButton(btn.label, btn.menu, "icon/22/" + btn.icon + ".png", 22, 22);
+
+ // beautiful decoupling: toolbar buttons don't know about radio boxes
+
+ // uncomment this to omit changes on one button
+ // if (btn.icon != "upload")
+ d.addEventListener("changeLayout", changeLayout, o );
+ break;
+
+ case "button":
+ var o = new qx.ui.toolbar.Button(btn.label, "icon/22/" + btn.icon + ".png");
+
+ // beautiful decoupling: toolbar buttons don't know about radio boxes
+
+ // uncomment this to omit changes on one button
+ // if (btn.icon != "upload")
+ d.addEventListener("changeLayout", changeLayout, o );
+ break;
+ };
+
+ if (useParts)
+ {
+ tbp.add(o);
+ }
+ else
+ {
+ tb.add(o);
+ };
+ };
+
+ if (useParts) {
+ tb.add(tbp);
+ };
+ };
+
+ d.add(tb);
+
+
+ var rd1 = new qx.ui.form.RadioButton("Show Icons and Label", "both");
+ var rd2 = new qx.ui.form.RadioButton("Show Icons", "icon");
+ var rd3 = new qx.ui.form.RadioButton("Show Label", "label");
+
+ with(rd1)
+ {
+ setTop(140);
+ setLeft(20);
+ setChecked(true);
+ };
+
+ with(rd2)
+ {
+ setTop(160);
+ setLeft(20);
+ };
+
+ with(rd3)
+ {
+ setTop(180);
+ setLeft(20);
+ };
+
+
+ var rbm = new qx.manager.selection.RadioManager();
+
+ rbm.add(rd1);
+ rbm.add(rd2);
+ rbm.add(rd3);
+
+
+ // beautiful decoupling: radio boxes don't know about toolbar buttons
+ rbm.addEventListener("changeSelected", function(e) {
+ d.dispatchEvent( new qx.event.type.DataEvent("changeLayout", e.getData().getValue() ) );
+ });
+
+ d.add(rd1, rd2, rd3);
+
+
+
+
+
+ // Alignment
+ var ra1 = new qx.ui.form.RadioButton("Left Aligned", "left");
+ var ra2 = new qx.ui.form.RadioButton("Centered", "center");
+ var ra3 = new qx.ui.form.RadioButton("Right Aligned", "right");
+
+ with(ra1)
+ {
+ setTop(140);
+ setLeft(220);
+ setChecked(true);
+ };
+
+ with(ra2)
+ {
+ setTop(160);
+ setLeft(220);
+ };
+
+ with(ra3)
+ {
+ setTop(180);
+ setLeft(220);
+ };
+
+
+ var ram = new qx.manager.selection.RadioManager();
+
+ ram.add(ra1);
+ ram.add(ra2);
+ ram.add(ra3);
+
+ d.add(ra1, ra2, ra3);
+
+ ram.addEventListener("changeSelected", function(e) {
+ tb.setHorizontalChildrenAlign(e.getData().getValue());
+ });
+
+
+
+
+
+
+
+ // Icon & Color Themes
+ qx.manager.object.ImageManager.getInstance().createThemeList(d, 20, 248);
+ qx.manager.object.ColorManager.getInstance().createThemeList(d, 220, 248);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ToolBar_2.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ToolBar_2.html
new file mode 100644
index 0000000000..c967dd2cd3
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ToolBar_2.html
@@ -0,0 +1,113 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Create ten toolbars. Stress Test.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var btns1 = [
+ { type : "button", icon : "document-new", text : "New" },
+ { type : "separator" },
+ { type : "button", icon : "edit-copy", text : "Copy" },
+ { type : "button", icon : "edit-cut", text : "Cut" },
+ { type : "button", icon : "edit-paste", text : "Paste" }
+ ];
+
+ var btns2 = [
+ { type : "button", icon : "go-up", text : "Upload" },
+ { type : "button", icon : "go-down", text : "Download" }
+ ];
+
+ var btns3 = [
+ { type : "button", icon : "help-faq", text : "Hilfe" }
+ ];
+
+ var bars = [ btns1, btns2, btns3 ];
+
+ function changeLayout(e) {
+ this.setShow(e.getData());
+ };
+
+ function changeSize(e) {
+ var v = e.getData();
+ var o = v == 22 ? 32 : 22;
+
+ this.setIcon(this.getIcon().replace(o, v));
+ };
+
+ var useParts = true;
+
+ for (var k=0; k<10; k++)
+ {
+ var tb = new qx.ui.toolbar.ToolBar;
+ with(tb)
+ {
+ setTop(48+(k*50));
+ setLeft(20);
+ setRight(335);
+ };
+
+ for (var j=0; j<bars.length; j++)
+ {
+ var btns = bars[j];
+
+ if (useParts) {
+ var tbp = new qx.ui.toolbar.Part;
+ };
+
+ for (var i=0; i<btns.length; i++)
+ {
+ var btn = btns[i];
+
+ switch(btn.type)
+ {
+ case "separator":
+ var o = new qx.ui.toolbar.Separator;
+ break;
+
+ case "button":
+ var o = new qx.ui.toolbar.Button(btn.text, "icon/22/actions/" + btn.icon + ".png");
+
+ // beautiful decoupling: toolbar buttons don't know about radio boxes
+
+ d.addEventListener("changeLayout", changeLayout, o);
+ d.addEventListener("changeSize", changeSize, o);
+ break;
+ };
+
+ if (useParts)
+ {
+ tbp.add(o);
+ }
+ else
+ {
+ tb.add(o);
+ };
+ };
+
+ if (useParts) {
+ tb.add(tbp);
+ };
+ };
+
+ d.add(tb);
+ };
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ToolBar_3.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ToolBar_3.html
new file mode 100644
index 0000000000..e9c9320287
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ToolBar_3.html
@@ -0,0 +1,39 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Testing the new flash support for qx.ui.toolbar.ToolBarButtons (inherited from qx.ui.basic.Atom).</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var tb = new qx.ui.toolbar.ToolBar;
+
+ tb.setTop(48);
+ tb.setLeft(20);
+ tb.setRight(335);
+
+ d.add(tb);
+
+ for (var i=1; i<8; i++)
+ {
+ var tbb = new qx.ui.toolbar.Button("Flash #" + i, "icon/22/actions/view-refresh.png", 22, 22, "./image/flash/color/file" + i + ".swf");
+ tb.add(tbb);
+ };
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ToolBar_4.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ToolBar_4.html
new file mode 100644
index 0000000000..290eb5d380
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/ToolBar_4.html
@@ -0,0 +1,193 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Again a nice example which shows how to use qx.ui.toolbar.ToolBar as a menubar system.</p>
+ <p>Added some parts and a new flex zone which aligns the help button to the right edge</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var c1 = new qx.client.Command();
+ c1.addEventListener("execute", function(e) {
+ this.debug("Execute: " + e.getData().getLabel());
+ });
+
+
+
+
+ var m1 = new qx.ui.menu.Menu;
+
+ var mb1_01 = new qx.ui.menu.Button("New", null, c1);
+ var mb1_02 = new qx.ui.menu.Button("Open", null, c1);
+ var mb1_03 = new qx.ui.menu.Button("Save", null, c1);
+ var mb1_04 = new qx.ui.menu.Button("Save as", null, c1);
+ var mb1_05 = new qx.ui.menu.Button("Close", null, c1);
+ var mb1_06 = new qx.ui.menu.Button("Restore last saved", null, c1);
+
+ m1.add(mb1_01, mb1_02, mb1_03, mb1_04, mb1_05, mb1_06);
+
+
+ var m2 = new qx.ui.menu.Menu;
+
+ var mb2_01 = new qx.ui.menu.Button("Undo", null, c1);
+ var mb2_02 = new qx.ui.menu.Button("Redo", null, c1);
+ var mb2_b1 = new qx.ui.menu.Separator();
+ var mb2_03 = new qx.ui.menu.Button("Cut", "icon/16/actions/edit-cut.png", c1);
+ var mb2_04 = new qx.ui.menu.Button("Copy", "icon/16/actions/edit-copy.png", c1);
+ var mb2_05 = new qx.ui.menu.Button("Paste", "icon/16/actions/edit-paste.png", c1);
+ var mb2_06 = new qx.ui.menu.Button("Delete", "icon/16/actions/edit-delete.png", c1);
+ var mb2_b2 = new qx.ui.menu.Separator();
+ var mb2_07 = new qx.ui.menu.Button("Select All", null, c1);
+ var mb2_08 = new qx.ui.menu.Button("Find", null, c1);
+ var mb2_09 = new qx.ui.menu.Button("Find Again", null, c1);
+
+
+
+
+ mb2_05.setEnabled(false);
+ mb2_06.setEnabled(false);
+ mb2_09.setEnabled(false);
+
+ m2.add(mb2_01, mb2_02, mb2_b1, mb2_03, mb2_04, mb2_05, mb2_06, mb2_b2, mb2_07, mb2_08, mb2_09);
+
+
+ var m3 = new qx.ui.menu.Menu;
+ var m3_suba = new qx.ui.menu.Menu;
+ var m3_subb = new qx.ui.menu.Menu;
+ var m3_subc = new qx.ui.menu.Menu;
+ var m3_subd = new qx.ui.menu.Menu;
+
+ var mb3_01 = new qx.ui.menu.CheckBox("File List", c1, false);
+ var mb3_02 = new qx.ui.menu.CheckBox("Syntax Highlighting", c1, true);
+ var mb3_03 = new qx.ui.menu.CheckBox("Statusbar", c1, true);
+ var mb3_b1 = new qx.ui.menu.Separator();
+ var mb3_04 = new qx.ui.menu.Button("Printer Font", null, null, m3_suba);
+ var mb3_05 = new qx.ui.menu.Button("Editor Font", null, null, m3_subb);
+ var mb3_06 = new qx.ui.menu.Button("Export Font", null, null, m3_subc);
+ var mb3_b2 = new qx.ui.menu.Separator();
+ var mb3_07 = new qx.ui.menu.Button("Advanced", null, null, m3_subd);
+
+ m3.add(mb3_01, mb3_02, mb3_03, mb3_b1, mb3_04, mb3_05, mb3_06, mb3_b2, mb3_07);
+
+ var mb3_suba_01 = new qx.ui.menu.Button("Tahoma, 11pt", null, c1);
+ var mb3_suba_02 = new qx.ui.menu.Button("Tahoma, 12pt", null, c1);
+ var mb3_suba_03 = new qx.ui.menu.Button("Tahoma, 13pt", null, c1);
+ var mb3_suba_04 = new qx.ui.menu.Button("Tahoma, 14pt", null, c1);
+ var mb3_suba_05 = new qx.ui.menu.Button("Tahoma, 15pt", null, c1);
+
+ m3_suba.add(mb3_suba_01, mb3_suba_02, mb3_suba_03, mb3_suba_04, mb3_suba_05);
+
+ var mb3_subb_01 = new qx.ui.menu.Button("Verdana, 11pt", null, c1);
+ var mb3_subb_02 = new qx.ui.menu.Button("Verdana, 12pt", null, c1);
+ var mb3_subb_03 = new qx.ui.menu.Button("Verdana, 13pt", null, c1);
+ var mb3_subb_04 = new qx.ui.menu.Button("Verdana, 14pt", null, c1);
+ var mb3_subb_05 = new qx.ui.menu.Button("Verdana, 15pt", null, c1);
+
+ m3_subb.add(mb3_subb_01, mb3_subb_02, mb3_subb_03, mb3_subb_04, mb3_subb_05);
+
+ var mb3_subc_01 = new qx.ui.menu.Button("Courier, 11pt", null, c1);
+ var mb3_subc_02 = new qx.ui.menu.Button("Courier, 12pt", null, c1);
+ var mb3_subc_03 = new qx.ui.menu.Button("Courier, 13pt", null, c1);
+ var mb3_subc_04 = new qx.ui.menu.Button("Courier, 14pt", null, c1);
+ var mb3_subc_05 = new qx.ui.menu.Button("Courier, 15pt", null, c1);
+
+ m3_subc.add(mb3_subc_01, mb3_subc_02, mb3_subc_03, mb3_subc_04, mb3_subc_05);
+
+ var mb3_subd_02_suba = new qx.ui.menu.Menu();
+
+ var mb3_subd_02_suba_01 = new qx.ui.menu.Button("First", null, c1);
+ var mb3_subd_02_suba_02 = new qx.ui.menu.Button("Second", null, c1);
+ var mb3_subd_02_suba_03 = new qx.ui.menu.Button("Third", null, c1);
+
+ mb3_subd_02_suba.add(mb3_subd_02_suba_01, mb3_subd_02_suba_02, mb3_subd_02_suba_03);
+
+ var mb3_subd_01 = new qx.ui.menu.Button("First", null, c1);
+ var mb3_subd_02 = new qx.ui.menu.Button("Second", null, c1, mb3_subd_02_suba);
+ var mb3_subd_03 = new qx.ui.menu.Button("Third", null, c1);
+
+ m3_subd.add(mb3_subd_01, mb3_subd_02, mb3_subd_03);
+
+ var m4 = new qx.ui.menu.Menu;
+
+ var m4_suba = new qx.ui.menu.Menu;
+
+ var mb4_01 = new qx.ui.menu.Button("View", null, c1, m4_suba);
+ var mb4_b1 = new qx.ui.menu.Separator();
+ var mb4_02 = new qx.ui.menu.Button("Editor Preferences...", null, c1);
+ var mb4_03 = new qx.ui.menu.Button("Editor Extensions", null, c1);
+ var mb4_04 = new qx.ui.menu.Button("Framework Preferences", null, c1);
+
+ m4.add(mb4_01, mb4_b1, mb4_02, mb4_03, mb4_04);
+
+ var mb4_suba_01 = new qx.ui.menu.Button("New Window", null, c1);
+ var mb4_suba_b1 = new qx.ui.menu.Separator();
+ var mb4_suba_02 = new qx.ui.menu.RadioButton("Overlapping", c1, true);
+ var mb4_suba_03 = new qx.ui.menu.RadioButton("Split Horizontally", c1);
+ var mb4_suba_04 = new qx.ui.menu.RadioButton("Split Vertically", c1);
+ var mb4_suba_b2 = new qx.ui.menu.Separator();
+ var mb4_suba_05 = new qx.ui.menu.Button("Next Window", null, c1);
+ var mb4_suba_06 = new qx.ui.menu.Button("Previous Window", null, c1);
+
+ m4_suba.add(mb4_suba_01, mb4_suba_b1, mb4_suba_02, mb4_suba_03, mb4_suba_04, mb4_suba_b2, mb4_suba_05, mb4_suba_06);
+
+ var mb4_manager = new qx.manager.selection.RadioManager("windowMode", [ mb4_suba_02, mb4_suba_03, mb4_suba_04 ]);
+
+
+ var m5 = new qx.ui.menu.Menu;
+
+ var mb5_01 = new qx.ui.menu.Button("Help", null, c1);
+ var mb5_02 = new qx.ui.menu.Button("About", null, c1);
+
+ m5.add(mb5_01, mb5_02);
+
+ d.add(m1, m2, m3, m3_suba, m3_subb, m3_subc, m3_subd, mb3_subd_02_suba, m4, m4_suba, m5);
+
+
+ var mb1 = new qx.ui.toolbar.ToolBar;
+
+ mb1.setTop(48);
+ mb1.setRight(335);
+ mb1.setLeft(20);
+
+ var mp1 = new qx.ui.toolbar.Part;
+ var mp2 = new qx.ui.toolbar.Part;
+ var mp3 = new qx.ui.toolbar.Part;
+
+ mb1.add(mp1, mp2, new qx.ui.basic.HorizontalSpacer, mp3);
+
+ var mbb1 = new qx.ui.toolbar.MenuButton("File", m1);
+ var mbb2 = new qx.ui.toolbar.MenuButton("Edit", m2);
+ var mbb3 = new qx.ui.toolbar.MenuButton("View", m3);
+ var mbb4 = new qx.ui.toolbar.MenuButton("Options", m4);
+ var mbb5 = new qx.ui.toolbar.MenuButton("Help", m5);
+
+ mp1.add(mbb1, mbb2);
+ mp2.add(mbb3, mbb4);
+ mp3.add(mbb5);
+
+ d.add(mb1);
+
+
+
+
+ // Icon & Color Themes
+ qx.manager.object.ImageManager.getInstance().createThemeList(d, 20, 348);
+ qx.manager.object.ColorManager.getInstance().createThemeList(d, 220, 348);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Transport_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Transport_1.html
new file mode 100644
index 0000000000..e8256aa2b3
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Transport_1.html
@@ -0,0 +1,196 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Simple test for qooxdoo's transport implementation using some data for an addressbook.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var lay = new qx.ui.layout.VerticalBoxLayout;
+ lay.setLocation(20, 48);
+ lay.setRight(335);
+ lay.setBottom(48);
+ qx.ui.core.ClientDocument.getInstance().add(lay);
+
+
+
+ var fsq = new qx.ui.groupbox.GroupBox("Request");
+ fsq.setHeight("auto");
+ lay.add(fsq);
+
+
+ var hlay = new qx.ui.layout.HorizontalBoxLayout;
+ hlay.setVerticalChildrenAlign("middle");
+ hlay.setSpacing(4);
+ hlay.auto();
+ fsq.add(hlay);
+
+
+ var cm1 = new qx.ui.form.ComboBox();
+ cm1.add(new qx.ui.form.ListItem("data/persons/anita.xml"));
+ cm1.add(new qx.ui.form.ListItem("data/persons/harald.xml"));
+ cm1.add(new qx.ui.form.ListItem("data/persons/lisbeth.xml"));
+ cm1.add(new qx.ui.form.ListItem("data/persons/paul.xml"));
+ cm1.setSelected(cm1.getList().getFirstChild());
+ cm1.setWidth(200);
+ cm1.addEventListener("changeSelected", upd);
+
+ hlay.add(cm1);
+
+
+
+ var async = new qx.ui.form.CheckBox("Async");
+ async.setChecked(true);
+ hlay.add(async);
+
+
+ var spin = new qx.ui.form.Spinner(1);
+ hlay.add(spin);
+
+
+
+ var btn = new qx.ui.form.Button("Send", "icon/16/actions/dialog-ok.png");
+ btn.addEventListener("execute", upd);
+ hlay.add(btn);
+
+
+ var inf = new qx.ui.form.TextField("State");
+ inf.setWidth(80);
+ inf.setReadOnly(true);
+ hlay.add(inf);
+
+
+ var code = new qx.ui.form.TextField("Code");
+ code.setWidth(30);
+ code.setReadOnly(true);
+ hlay.add(code);
+
+
+ var typ = new qx.ui.form.TextField("Type");
+ typ.setWidth(80);
+ typ.setReadOnly(true);
+ hlay.add(typ);
+
+
+ var len = new qx.ui.form.TextField("Length");
+ len.setWidth(50);
+ len.setReadOnly(true);
+ hlay.add(len);
+
+
+ var checken = new qx.ui.form.CheckBox("enabled");
+ checken.setChecked(true);
+ hlay.add(checken);
+
+ checken.addEventListener("changeChecked", function(e) {
+ qx.io.remote.RequestQueue.getInstance().setEnabled(e.getData());
+ });
+
+
+
+
+
+ var fsr = new qx.ui.groupbox.GroupBox("Result");
+ fsr.setHeight("1*");
+ lay.add(fsr);
+
+ var area = new qx.ui.form.TextArea;
+ area.setDimension("100%", "100%");
+ fsr.add(area);
+
+
+
+
+
+
+
+
+
+
+ function upd(e)
+ {
+ var val = cm1.getSelected();
+
+ if (!val) {
+ return;
+ };
+
+ var req;
+ for( var i=0, max=parseInt(spin.getValue()); i<max; i++ )
+ {
+ req = new qx.io.remote.Request(val.getLabel(), "GET", qx.util.Mime.TEXT);
+
+ req.setAsynchronous(async.getChecked());
+ req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
+
+ req.setParameter("test1", "value1");
+ req.setParameter("test2", "value2");
+ req.setParameter("test3", "value3");
+
+ req.setCrossDomain(false);
+
+ req.addEventListener("sending", function(e) {
+ inf.setValue("Sending");
+ });
+
+ req.addEventListener("receiving", function(e) {
+ inf.setValue("Receiving");
+ });
+
+ req.addEventListener("completed", function(e)
+ {
+ inf.setValue("Completed");
+ typ.setValue(e.getData().getResponseHeader("Content-Type"));
+ len.setValue(e.getData().getResponseHeader("Content-Length"));
+ code.setValue(e.getData().getStatusCode().toString());
+ area.setValue(e.getData().getContent());
+ });
+
+ req.addEventListener("failed", function(e)
+ {
+ inf.setValue("Failed");
+ typ.setValue(e.getData().getResponseHeader("Content-Type"));
+ len.setValue(e.getData().getResponseHeader("Content-Length"));
+ code.setValue(e.getData().getStatusCode().toString());
+ area.setValue(e.getData().getContent());
+ });
+
+ req.addEventListener("timeout", function(e)
+ {
+ inf.setValue("Timeout");
+ typ.setValue(e.getData().getResponseHeader("Content-Type"));
+ len.setValue(e.getData().getResponseHeader("Content-Length"));
+ code.setValue(e.getData().getStatusCode().toString());
+ area.setValue(e.getData().getContent());
+ });
+
+ req.addEventListener("aborted", function(e)
+ {
+ inf.setValue("Aborted");
+ typ.setValue(e.getData().getResponseHeader("Content-Type"));
+ len.setValue(e.getData().getResponseHeader("Content-Length"));
+ code.setValue(e.getData().getStatusCode().toString());
+ area.setValue(e.getData().getContent());
+ });
+
+ req.send();
+ };
+ };
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Transport_2.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Transport_2.html
new file mode 100644
index 0000000000..07244865fd
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Transport_2.html
@@ -0,0 +1,189 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Testing different file sizes with timeouts and other built-in transport features.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var lay = new qx.ui.layout.VerticalBoxLayout;
+ lay.setLocation(20, 48);
+ lay.setRight(335);
+ lay.setBottom(48);
+ qx.ui.core.ClientDocument.getInstance().add(lay);
+
+
+
+ var fsq = new qx.ui.groupbox.GroupBox("Request");
+ fsq.setHeight("auto");
+ lay.add(fsq);
+
+
+ var hlay = new qx.ui.layout.HorizontalBoxLayout;
+ hlay.setVerticalChildrenAlign("middle");
+ hlay.setSpacing(4);
+ hlay.auto();
+ fsq.add(hlay);
+
+
+ var cm1 = new qx.ui.form.ComboBox();
+ cm1.add(new qx.ui.form.ListItem("data/filesize/40kb.xml"));
+ cm1.add(new qx.ui.form.ListItem("data/filesize/400kb.xml"));
+ cm1.setSelected(cm1.getList().getFirstChild());
+ cm1.setWidth(200);
+ cm1.addEventListener("changeSelected", upd);
+
+ hlay.add(cm1);
+
+
+
+ var async = new qx.ui.form.CheckBox("Async");
+ async.setChecked(true);
+ hlay.add(async);
+
+
+ var spin = new qx.ui.form.Spinner(1);
+ hlay.add(spin);
+
+
+
+ var btn = new qx.ui.form.Button("Send", "icon/16/actions/dialog-ok.png");
+ btn.addEventListener("execute", upd);
+ hlay.add(btn);
+
+
+ var inf = new qx.ui.form.TextField("State");
+ inf.setWidth(80);
+ hlay.add(inf);
+
+
+ var code = new qx.ui.form.TextField("Code");
+ code.setWidth(30);
+ hlay.add(code);
+
+
+ var typ = new qx.ui.form.TextField("Type");
+ typ.setWidth(80);
+ typ.setReadOnly(true);
+ hlay.add(typ);
+
+
+ var len = new qx.ui.form.TextField("Length");
+ len.setWidth(50);
+ len.setReadOnly(true);
+ hlay.add(len);
+
+
+
+
+ var checken = new qx.ui.form.CheckBox("enabled");
+ checken.setChecked(true);
+ hlay.add(checken);
+
+ checken.addEventListener("changeChecked", function(e) {
+ qx.io.remote.RequestQueue.getInstance().setEnabled(e.getData());
+ });
+
+
+
+
+
+ var fsr = new qx.ui.groupbox.GroupBox("Result");
+ fsr.setHeight("1*");
+ lay.add(fsr);
+
+ var area = new qx.ui.basic.Label("Disabled because of large filesize");
+ fsr.add(area);
+
+
+
+
+
+
+
+
+
+ function upd(e)
+ {
+ var val = cm1.getSelected();
+
+ if (!val) {
+ return;
+ };
+
+ var req;
+ for( var i=0, max=parseInt(spin.getValue()); i<max; i++ )
+ {
+ req = new qx.io.remote.Request(val.getLabel(), "GET", qx.util.Mime.TEXT);
+
+ req.setAsynchronous(async.getChecked());
+ req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
+
+ req.setParameter("test1", "value1");
+ req.setParameter("test2", "value2");
+ req.setParameter("test3", "value3");
+
+ // Force to testing iframe implementation
+ // req.setCrossDomain(true);
+
+ req.addEventListener("sending", function(e) {
+ inf.setValue("Sending");
+ });
+
+ req.addEventListener("receiving", function(e) {
+ inf.setValue("Receiving");
+ });
+
+ req.addEventListener("completed", function(e)
+ {
+ inf.setValue("Completed");
+ typ.setValue(e.getData().getResponseHeader("Content-Type"));
+ len.setValue(e.getData().getResponseHeader("Content-Length"));
+ code.setValue(e.getData().getStatusCode().toString());
+ });
+
+ req.addEventListener("failed", function(e)
+ {
+ inf.setValue("Failed");
+ typ.setValue(e.getData().getResponseHeader("Content-Type"));
+ len.setValue(e.getData().getResponseHeader("Content-Length"));
+ code.setValue(e.getData().getStatusCode().toString());
+ });
+
+ req.addEventListener("timeout", function(e)
+ {
+ inf.setValue("Timeout");
+ typ.setValue(e.getData().getResponseHeader("Content-Type"));
+ len.setValue(e.getData().getResponseHeader("Content-Length"));
+ code.setValue(e.getData().getStatusCode().toString());
+ });
+
+ req.addEventListener("aborted", function(e)
+ {
+ inf.setValue("Aborted");
+ typ.setValue(e.getData().getResponseHeader("Content-Type"));
+ len.setValue(e.getData().getResponseHeader("Content-Length"));
+ code.setValue(e.getData().getStatusCode().toString());
+ });
+
+ req.send();
+ };
+ };
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Transport_3.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Transport_3.html
new file mode 100644
index 0000000000..b59fc914e6
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Transport_3.html
@@ -0,0 +1,114 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Testing multiple parallel requests of files with different sizes.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var lab1 = new qx.ui.basic.Label("40KB");
+ var lab2 = new qx.ui.basic.Label("400KB");
+
+ var spin1 = new qx.ui.form.Spinner(0, 3, 50);
+ var spin2 = new qx.ui.form.Spinner(0, 3, 20);
+
+
+
+
+ var grid = new qx.ui.layout.GridLayout;
+
+ grid.setLocation(20, 48);
+ grid.setDimension("auto", "auto");
+ grid.setHorizontalSpacing(10);
+ grid.setVerticalSpacing(4);
+ grid.setBorder(qx.renderer.border.BorderPresets.getInstance().thinOutset);
+ grid.setBackgroundColor("white");
+ grid.setPadding(10);
+
+ grid.setColumnCount(2);
+ grid.setRowCount(2);
+
+ grid.setColumnWidth(0, 50);
+ grid.setColumnWidth(1, 50);
+
+ grid.setRowHeight(0, 18);
+ grid.setRowHeight(1, 22);
+
+ qx.ui.core.ClientDocument.getInstance().add(grid);
+
+ grid.add(lab1, 0, 0);
+ grid.add(lab2, 1, 0);
+
+ grid.add(spin1, 0, 1);
+ grid.add(spin2, 1, 1);
+
+
+
+ var btn = new qx.ui.form.Button("Send", "icon/16/actions/dialog-ok.png");
+ btn.setLocation(20, 120);
+ qx.ui.core.ClientDocument.getInstance().add(btn);
+
+
+
+ var area = new qx.ui.form.TextArea("");
+ area.setLocation(20, 154);
+ area.setDimension(192, 400);
+ qx.ui.core.ClientDocument.getInstance().add(area);
+
+
+
+ btn.addEventListener("execute", function(e)
+ {
+ var s1 = parseInt(spin1.getValue());
+ var s2 = parseInt(spin2.getValue());
+
+ while ((s1+s2) > 0)
+ {
+ if (s1 > 0)
+ {
+ makeRequest(40);
+ s1--;
+ };
+
+ if (s2 > 0)
+ {
+ makeRequest(400);
+ s2--;
+ };
+ };
+ });
+
+ function makeRequest(size)
+ {
+ var req = new qx.io.remote.Request("data/filesize/" + size + "kb.xml", "GET", qx.util.Mime.XML);
+
+ req.addEventListener("completed", function(e) {
+ area.setValue(area.getValue() + "Request " + size + "kb: completed\n");
+ });
+
+ req.addEventListener("failed", function(e) {
+ area.setValue(area.getValue() + "Request " + size + "kb: failed\n");
+ });
+
+ req.addEventListener("timeout", function(e) {
+ area.setValue(area.getValue() + "Request " + size + "kb: timeout\n");
+ });
+
+ req.send();
+ };
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Transport_4.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Transport_4.html
new file mode 100644
index 0000000000..93349c45d2
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Transport_4.html
@@ -0,0 +1,198 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Simple test for qooxdoo's transport implementation using some data for an addressbook.</p>
+ <p>Using text content in this case.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var lay = new qx.ui.layout.VerticalBoxLayout;
+ lay.setLocation(20, 48);
+ lay.setRight(335);
+ lay.setBottom(48);
+ qx.ui.core.ClientDocument.getInstance().add(lay);
+
+
+
+ var fsq = new qx.ui.groupbox.GroupBox("Request");
+ fsq.setHeight("auto");
+ lay.add(fsq);
+
+
+ var hlay = new qx.ui.layout.HorizontalBoxLayout;
+ hlay.setVerticalChildrenAlign("middle");
+ hlay.setSpacing(4);
+ hlay.auto();
+ fsq.add(hlay);
+
+
+ var cm1 = new qx.ui.form.ComboBox();
+ cm1.add(new qx.ui.form.ListItem("data/persons/anita.txt"));
+ cm1.add(new qx.ui.form.ListItem("data/persons/harald.txt"));
+ cm1.add(new qx.ui.form.ListItem("data/persons/lisbeth.txt"));
+ cm1.add(new qx.ui.form.ListItem("data/persons/paul.txt"));
+ cm1.setSelected(cm1.getList().getFirstChild());
+ cm1.setWidth(200);
+ cm1.addEventListener("changeSelected", upd);
+
+ hlay.add(cm1);
+
+
+
+ var async = new qx.ui.form.CheckBox("Async");
+ async.setChecked(true);
+ hlay.add(async);
+
+
+ var spin = new qx.ui.form.Spinner(1);
+ hlay.add(spin);
+
+
+
+ var btn = new qx.ui.form.Button("Send", "icon/16/actions/dialog-ok.png");
+ btn.addEventListener("execute", upd);
+ hlay.add(btn);
+
+
+ var inf = new qx.ui.form.TextField("State");
+ inf.setWidth(80);
+ inf.setReadOnly(true);
+ hlay.add(inf);
+
+
+ var code = new qx.ui.form.TextField("Code");
+ code.setWidth(30);
+ code.setReadOnly(true);
+ hlay.add(code);
+
+
+ var typ = new qx.ui.form.TextField("Type");
+ typ.setWidth(80);
+ typ.setReadOnly(true);
+ hlay.add(typ);
+
+
+ var len = new qx.ui.form.TextField("Length");
+ len.setWidth(50);
+ len.setReadOnly(true);
+ hlay.add(len);
+
+
+ var checken = new qx.ui.form.CheckBox("enabled");
+ checken.setChecked(true);
+ hlay.add(checken);
+
+ checken.addEventListener("changeChecked", function(e) {
+ qx.io.remote.RequestQueue.getInstance().setEnabled(e.getData());
+ });
+
+
+
+
+
+ var fsr = new qx.ui.groupbox.GroupBox("Result");
+ fsr.setHeight("1*");
+ lay.add(fsr);
+
+ var area = new qx.ui.form.TextArea;
+ area.setDimension("100%", "100%");
+ fsr.add(area);
+
+
+
+
+
+
+
+
+
+
+ function upd(e)
+ {
+ var val = cm1.getSelected();
+
+ if (!val) {
+ return;
+ };
+
+ var req;
+ for( var i=0, max=parseInt(spin.getValue()); i<max; i++ )
+ {
+ req = new qx.io.remote.Request(val.getLabel(), "GET", qx.util.Mime.TEXT);
+
+ req.setAsynchronous(async.getChecked());
+ req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
+
+ req.setParameter("test1", "value1");
+ req.setParameter("test2", "value2");
+ req.setParameter("test3", "value3");
+
+ // Force to testing iframe implementation
+ // req.setCrossDomain(true);
+
+ req.addEventListener("sending", function(e) {
+ inf.setValue("Sending");
+ });
+
+ req.addEventListener("receiving", function(e) {
+ inf.setValue("Receiving");
+ });
+
+ req.addEventListener("completed", function(e)
+ {
+ inf.setValue("Completed");
+ typ.setValue(e.getData().getResponseHeader("Content-Type"));
+ len.setValue(e.getData().getResponseHeader("Content-Length"));
+ code.setValue(e.getData().getStatusCode().toString());
+ area.setValue(e.getData().getContent());
+ });
+
+ req.addEventListener("failed", function(e)
+ {
+ inf.setValue("Failed");
+ typ.setValue(e.getData().getResponseHeader("Content-Type"));
+ len.setValue(e.getData().getResponseHeader("Content-Length"));
+ code.setValue(e.getData().getStatusCode().toString());
+ area.setValue(e.getData().getContent());
+ });
+
+ req.addEventListener("timeout", function(e)
+ {
+ inf.setValue("Timeout");
+ typ.setValue(e.getData().getResponseHeader("Content-Type"));
+ len.setValue(e.getData().getResponseHeader("Content-Length"));
+ code.setValue(e.getData().getStatusCode().toString());
+ area.setValue(e.getData().getContent());
+ });
+
+ req.addEventListener("aborted", function(e)
+ {
+ inf.setValue("Aborted");
+ typ.setValue(e.getData().getResponseHeader("Content-Type"));
+ len.setValue(e.getData().getResponseHeader("Content-Length"));
+ code.setValue(e.getData().getStatusCode().toString());
+ area.setValue(e.getData().getContent());
+ });
+
+ req.send();
+ };
+ };
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Transport_5.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Transport_5.html
new file mode 100644
index 0000000000..6c7ffb34cd
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Transport_5.html
@@ -0,0 +1,198 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Simple test for qooxdoo's transport implementation using some data for an addressbook.</p>
+ <p>Using html content in this case.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var lay = new qx.ui.layout.VerticalBoxLayout;
+ lay.setLocation(20, 48);
+ lay.setRight(335);
+ lay.setBottom(48);
+ qx.ui.core.ClientDocument.getInstance().add(lay);
+
+
+
+ var fsq = new qx.ui.groupbox.GroupBox("Request");
+ fsq.setHeight("auto");
+ lay.add(fsq);
+
+
+ var hlay = new qx.ui.layout.HorizontalBoxLayout;
+ hlay.setVerticalChildrenAlign("middle");
+ hlay.setSpacing(4);
+ hlay.auto();
+ fsq.add(hlay);
+
+
+ var cm1 = new qx.ui.form.ComboBox();
+ cm1.add(new qx.ui.form.ListItem("data/persons/anita.html"));
+ cm1.add(new qx.ui.form.ListItem("data/persons/harald.html"));
+ cm1.add(new qx.ui.form.ListItem("data/persons/lisbeth.html"));
+ cm1.add(new qx.ui.form.ListItem("data/persons/paul.html"));
+ cm1.setSelected(cm1.getList().getFirstChild());
+ cm1.setWidth(200);
+ cm1.addEventListener("changeSelected", upd);
+
+ hlay.add(cm1);
+
+
+
+ var async = new qx.ui.form.CheckBox("Async");
+ async.setChecked(true);
+ hlay.add(async);
+
+
+ var spin = new qx.ui.form.Spinner(1);
+ hlay.add(spin);
+
+
+
+ var btn = new qx.ui.form.Button("Send", "icon/16/actions/dialog-ok.png");
+ btn.addEventListener("execute", upd);
+ hlay.add(btn);
+
+
+ var inf = new qx.ui.form.TextField("State");
+ inf.setWidth(80);
+ inf.setReadOnly(true);
+ hlay.add(inf);
+
+
+ var code = new qx.ui.form.TextField("Code");
+ code.setWidth(30);
+ code.setReadOnly(true);
+ hlay.add(code);
+
+
+ var typ = new qx.ui.form.TextField("Type");
+ typ.setWidth(80);
+ typ.setReadOnly(true);
+ hlay.add(typ);
+
+
+ var len = new qx.ui.form.TextField("Length");
+ len.setWidth(50);
+ len.setReadOnly(true);
+ hlay.add(len);
+
+
+ var checken = new qx.ui.form.CheckBox("enabled");
+ checken.setChecked(true);
+ hlay.add(checken);
+
+ checken.addEventListener("changeChecked", function(e) {
+ qx.io.remote.RequestQueue.getInstance().setEnabled(e.getData());
+ });
+
+
+
+
+
+ var fsr = new qx.ui.groupbox.GroupBox("Result");
+ fsr.setHeight("1*");
+ lay.add(fsr);
+
+ var area = new qx.ui.embed.HtmlEmbed("&#160;");
+ area.setDimension("100%", "100%");
+ fsr.add(area);
+
+
+
+
+
+
+
+
+
+
+ function upd(e)
+ {
+ var val = cm1.getSelected();
+
+ if (!val) {
+ return;
+ };
+
+ var req;
+ for( var i=0, max=parseInt(spin.getValue()); i<max; i++ )
+ {
+ req = new qx.io.remote.Request(val.getLabel(), "GET", qx.util.Mime.HTML);
+
+ req.setAsynchronous(async.getChecked());
+ req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
+
+ req.setParameter("test1", "value1");
+ req.setParameter("test2", "value2");
+ req.setParameter("test3", "value3");
+
+ // Force to testing iframe implementation
+ // req.setCrossDomain(true);
+
+ req.addEventListener("sending", function(e) {
+ inf.setValue("Sending");
+ });
+
+ req.addEventListener("receiving", function(e) {
+ inf.setValue("Receiving");
+ });
+
+ req.addEventListener("completed", function(e)
+ {
+ inf.setValue("Completed");
+ typ.setValue(e.getData().getResponseHeader("Content-Type"));
+ len.setValue(e.getData().getResponseHeader("Content-Length"));
+ code.setValue(e.getData().getStatusCode().toString());
+ area.setHtml(e.getData().getContent());
+ });
+
+ req.addEventListener("failed", function(e)
+ {
+ inf.setValue("Failed");
+ typ.setValue(e.getData().getResponseHeader("Content-Type"));
+ len.setValue(e.getData().getResponseHeader("Content-Length"));
+ code.setValue(e.getData().getStatusCode().toString());
+ area.setHtml(e.getData().getContent());
+ });
+
+ req.addEventListener("timeout", function(e)
+ {
+ inf.setValue("Timeout");
+ typ.setValue(e.getData().getResponseHeader("Content-Type"));
+ len.setValue(e.getData().getResponseHeader("Content-Length"));
+ code.setValue(e.getData().getStatusCode().toString());
+ area.setHtml(e.getData().getContent());
+ });
+
+ req.addEventListener("aborted", function(e)
+ {
+ inf.setValue("Aborted");
+ typ.setValue(e.getData().getResponseHeader("Content-Type"));
+ len.setValue(e.getData().getResponseHeader("Content-Length"));
+ code.setValue(e.getData().getStatusCode().toString());
+ area.setHtml(e.getData().getContent());
+ });
+
+ req.send();
+ };
+ };
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Transport_6.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Transport_6.html
new file mode 100644
index 0000000000..22fac63463
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Transport_6.html
@@ -0,0 +1,222 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Simple test for qooxdoo's transport implementation using some data for an addressbook.</p>
+ <p>Using javascript/json content in this case.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var lay = new qx.ui.layout.VerticalBoxLayout;
+ lay.setLocation(20, 48);
+ lay.setRight(335);
+ lay.setBottom(48);
+ qx.ui.core.ClientDocument.getInstance().add(lay);
+
+
+
+ var fsq = new qx.ui.groupbox.GroupBox("Request");
+ fsq.setHeight("auto");
+ lay.add(fsq);
+
+
+ var hlay = new qx.ui.layout.HorizontalBoxLayout;
+ hlay.setVerticalChildrenAlign("middle");
+ hlay.setSpacing(4);
+ hlay.auto();
+ fsq.add(hlay);
+
+
+ var cm1 = new qx.ui.form.ComboBox();
+ cm1.add(new qx.ui.form.ListItem("data/persons/anita.js"));
+ cm1.add(new qx.ui.form.ListItem("data/persons/harald.js"));
+ cm1.add(new qx.ui.form.ListItem("data/persons/lisbeth.js"));
+ cm1.add(new qx.ui.form.ListItem("data/persons/paul.js"));
+ cm1.setSelected(cm1.getList().getFirstChild());
+ cm1.setWidth(200);
+ cm1.addEventListener("changeSelected", upd);
+
+ hlay.add(cm1);
+
+
+
+ var async = new qx.ui.form.CheckBox("Async");
+ async.setChecked(true);
+ hlay.add(async);
+
+
+ var spin = new qx.ui.form.Spinner(1);
+ hlay.add(spin);
+
+
+
+ var btn = new qx.ui.form.Button("Send", "icon/16/actions/dialog-ok.png");
+ btn.addEventListener("execute", upd);
+ hlay.add(btn);
+
+
+ var inf = new qx.ui.form.TextField("State");
+ inf.setWidth(80);
+ inf.setReadOnly(true);
+ hlay.add(inf);
+
+
+ var code = new qx.ui.form.TextField("Code");
+ code.setWidth(30);
+ code.setReadOnly(true);
+ hlay.add(code);
+
+
+ var typ = new qx.ui.form.TextField("Type");
+ typ.setWidth(80);
+ typ.setReadOnly(true);
+ hlay.add(typ);
+
+
+ var len = new qx.ui.form.TextField("Length");
+ len.setWidth(50);
+ len.setReadOnly(true);
+ hlay.add(len);
+
+
+ var checken = new qx.ui.form.CheckBox("enabled");
+ checken.setChecked(true);
+ hlay.add(checken);
+
+ checken.addEventListener("changeChecked", function(e) {
+ qx.io.remote.RequestQueue.getInstance().setEnabled(e.getData());
+ });
+
+
+
+
+
+ var fsr = new qx.ui.groupbox.GroupBox("Result");
+ fsr.setHeight("1*");
+ lay.add(fsr);
+
+ var area = new qx.ui.layout.VerticalBoxLayout;
+ area.setSpacing(6);
+ area.setDimension("100%", "100%");
+ fsr.add(area);
+
+
+
+ var fgivenname = new qx.ui.basic.Label("Given Name");
+ var fname = new qx.ui.basic.Label("Name");
+ var fage = new qx.ui.basic.Label("Age");
+ var fstreet = new qx.ui.basic.Label("Street");
+ var fplz = new qx.ui.basic.Label("PLZ");
+ var fcity = new qx.ui.basic.Label("City");
+ var fcountry = new qx.ui.basic.Label("Country");
+ var fphone = new qx.ui.basic.Label("Phone");
+
+ area.add(fgivenname, fname, fage, fstreet, fplz, fcity, fcountry, fphone);
+
+
+
+
+
+
+
+ function upd(e)
+ {
+ var val = cm1.getSelected();
+
+ if (!val) {
+ return;
+ };
+
+ var req;
+ for( var i=0, max=parseInt(spin.getValue()); i<max; i++ )
+ {
+ req = new qx.io.remote.Request(val.getLabel(), "GET", qx.util.Mime.JSON);
+
+ req.setAsynchronous(async.getChecked());
+ req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
+
+ req.setParameter("test1", "value1");
+ req.setParameter("test2", "value2");
+ req.setParameter("test3", "value3");
+
+ // Force to testing iframe implementation
+ // req.setCrossDomain(true);
+
+ // This combination couldn't be handled currently
+ // req.setCrossDomain(true);
+ // req.setAsynchronous(false);
+
+ req.addEventListener("sending", function(e) {
+ inf.setValue("Sending");
+ });
+
+ req.addEventListener("receiving", function(e) {
+ inf.setValue("Receiving");
+ });
+
+ req.addEventListener("completed", function(e)
+ {
+ inf.setValue("Completed");
+ typ.setValue(e.getData().getResponseHeader("Content-Type"));
+ len.setValue(e.getData().getResponseHeader("Content-Length"));
+ code.setValue(e.getData().getStatusCode().toString());
+
+ var vContent = e.getData().getContent();
+
+ fgivenname.setHtml(vContent.givenName.toString());
+ fname.setHtml(vContent.name.toString());
+ fage.setHtml(vContent.age.toString());
+ fstreet.setHtml(vContent.street.toString());
+ fplz.setHtml(vContent.plz.toString());
+ fcity.setHtml(vContent.city.toString());
+ fcountry.setHtml(vContent.country.toString());
+ fphone.setHtml(vContent.phone.toString());
+
+ qx.ui.core.Widget.flushGlobalQueues();
+ });
+
+ req.addEventListener("failed", function(e)
+ {
+ inf.setValue("Failed");
+ typ.setValue(e.getData().getResponseHeader("Content-Type"));
+ len.setValue(e.getData().getResponseHeader("Content-Length"));
+ code.setValue(e.getData().getStatusCode().toString());
+ });
+
+ req.addEventListener("timeout", function(e)
+ {
+ inf.setValue("Timeout");
+ typ.setValue(e.getData().getResponseHeader("Content-Type"));
+ len.setValue(e.getData().getResponseHeader("Content-Length"));
+ code.setValue(e.getData().getStatusCode().toString());
+ });
+
+ req.addEventListener("aborted", function(e)
+ {
+ inf.setValue("Aborted");
+ typ.setValue(e.getData().getResponseHeader("Content-Type"));
+ len.setValue(e.getData().getResponseHeader("Content-Length"));
+ code.setValue(e.getData().getStatusCode().toString());
+ });
+
+ req.send();
+ };
+ };
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/TreeVirtual_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/TreeVirtual_1.html
new file mode 100644
index 0000000000..e419453600
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/TreeVirtual_1.html
@@ -0,0 +1,69 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>
+ An example of using the Virtual Tree widget with addBranch() and addLeaf()
+ </p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ // tree
+ var tree = new qx.ui.treevirtual.TreeVirtual("Tree");
+ with (tree)
+ {
+ set({
+ left : 10,
+ top : 30,
+ width : 400,
+ bottom : 30,
+ border : qx.renderer.border.BorderPresets.getInstance().thinInset
+ });
+ setColumnWidth(0, 400);
+ };
+
+ d.add(tree);
+
+ // tree data model
+ var dataModel = tree.getDataModel();
+
+ var te;
+
+ var te1 = dataModel.addBranch(null, "Desktop", true);
+
+ dataModel.addBranch(te1, "Files", true);
+
+ te = dataModel.addBranch(te1, "Workspace", true);
+ dataModel.addLeaf(te, "Windows (C:)");
+ dataModel.addLeaf(te, "Documents (D:)");
+
+ dataModel.addBranch(te1, "Network", true);
+ dataModel.addBranch(te1, "Trash", true);
+
+ var te2 = dataModel.addBranch(null, "Inbox", true);
+
+ dataModel.addBranch(te2, "Presets", true);
+ dataModel.addBranch(te2, "Sent", true);
+ dataModel.addBranch(te2, "Trash", true);
+ dataModel.addBranch(te2, "Data", true);
+ dataModel.addBranch(te2, "Edit", true);
+
+ dataModel.setData();
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/TreeVirtual_2.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/TreeVirtual_2.html
new file mode 100644
index 0000000000..8c965f93de
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/TreeVirtual_2.html
@@ -0,0 +1,98 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>An example of using the Virtual Tree widget providing the array of tree
+ nodes en bulk instead of issuing a series of addBranch() and addLeaf()
+ calls. This example also colors some nodes.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ // tree
+ var tree = new qx.ui.treevirtual.TreeVirtual("Tree");
+ with (tree)
+ {
+ set({
+ left : 10,
+ top : 30,
+ width : 400,
+ bottom : 30,
+ border : qx.renderer.border.BorderPresets.getInstance().thinInset
+ });
+ setColumnWidth(0, 400);
+ };
+
+ d.add(tree);
+
+ // tree data model
+ var dataModel = tree.getDataModel();
+
+ var treeData = [];
+
+ var node = // the root node (not displayed)
+ {
+ opened : true,
+ children : [ 1 ]
+ };
+ treeData.push(node);
+
+ var node =
+ {
+ type : qx.ui.treevirtual.SimpleTreeDataModel.Type.BRANCH,
+ parentNodeId : 0,
+ label : "My Root",
+ bSelected : false,
+ opened : true,
+ icon : "icon/16/places/folder.png",
+ iconSelected : "icon/16/folder_open.png",
+ labelStyle : "background-color:red;color:white",
+ children : [ 2 ]
+ };
+ treeData.push(node);
+
+ var node =
+ {
+ type : qx.ui.treevirtual.SimpleTreeDataModel.Type.BRANCH,
+ parentNodeId : 1,
+ label : "A sub-folder",
+ bSelected : false,
+ opened : true,
+ icon : "icon/16/places/folder.png",
+ iconSelected : "icon/16/folder_open.png",
+ cellStyle : "background-color:cyan",
+ children : [ 3 ]
+ };
+ treeData.push(node);
+
+ var node =
+ {
+ type : qx.ui.treevirtual.SimpleTreeDataModel.Type.LEAF,
+ parentNodeId : 2,
+ label : "Third-level leaf",
+ bSelected : false,
+ opened : false,
+ icon : "icon/16/actions/document-new.png",
+ iconSelected : "icon/16/actions/document-open.png",
+ children : [ ]
+ };
+ treeData.push(node);
+
+ dataModel.setData(treeData);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/TreeVirtual_3.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/TreeVirtual_3.html
new file mode 100644
index 0000000000..b92df15d4f
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/TreeVirtual_3.html
@@ -0,0 +1,84 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Test large trees. This one adds a Spam branch with 3000 leaf nodes.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ // tree
+ var tree = new qx.ui.treevirtual.TreeVirtual("Tree");
+ with (tree)
+ {
+ set({
+ left : 10,
+ top : 30,
+ width : 400,
+ bottom : 30,
+ border : qx.renderer.border.BorderPresets.getInstance().thinInset
+ });
+ setColumnWidth(0, 400);
+ setAlwaysShowOpenCloseSymbol(true);
+ };
+
+ d.add(tree);
+
+ // tree data model
+ var dataModel = tree.getDataModel();
+
+ var te1 = dataModel.addBranch(null, "Desktop", true);
+ dataModel.setState(te1,
+ {
+ labelStyle : "background-color: red; color: white;"
+ });
+
+ var te;
+
+ dataModel.addBranch(te1, "Files", true);
+
+ te = dataModel.addBranch(te1, "Workspace", true);
+ dataModel.addLeaf(te, "Windows (C:)");
+ dataModel.addLeaf(te, "Documents (D:)");
+
+ dataModel.addBranch(te1, "Network", true);
+
+ te = dataModel.addBranch(te1, "Trash", true);
+ dataModel.setState(te,
+ {
+ cellStyle : "background-color: cyan;"
+ });
+
+
+ var te2 = dataModel.addBranch(null, "Inbox", true);
+
+ te = dataModel.addBranch(te2, "Spam", false);
+
+ for (var i = 1; i < 3000; i++)
+ {
+ dataModel.addLeaf(te, "Spam Message #" + i);
+ }
+
+ dataModel.addBranch(te2, "Sent", true);
+ dataModel.addBranch(te2, "Trash", true);
+ dataModel.addBranch(te2, "Data", true);
+ dataModel.addBranch(te2, "Edit", true);
+
+ dataModel.setData();
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/TreeVirtual_4.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/TreeVirtual_4.html
new file mode 100644
index 0000000000..3b150f52ba
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/TreeVirtual_4.html
@@ -0,0 +1,186 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Show use of events upon tree opening and closing, including adding
+ nodes dynamically upon tree open and removing the open/close button upon
+ tree open if the branch contains no children.
+ </p><p>
+ Allows controlling selection mode. Labels of selected items are
+ displayed.
+ </p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ // tree
+ var tree = new qx.ui.treevirtual.TreeVirtual("Tree");
+ with (tree)
+ {
+ set({
+ left : 10,
+ top : 30,
+ width : 400,
+ bottom : 30,
+ border : qx.renderer.border.BorderPresets.getInstance().thinInset
+ });
+ setColumnWidth(0, 400);
+ setAlwaysShowOpenCloseSymbol(true);
+ };
+
+ // Add the tree to the document
+ tree.addToDocument();
+
+ // tree data model
+ var dataModel = tree.getDataModel();
+
+ var te1 = dataModel.addBranch(null, "Desktop", true);
+
+ var te;
+ dataModel.addBranch(te1, "Files", true);
+
+ te = dataModel.addBranch(te1, "Workspace", true);
+ dataModel.addLeaf(te, "Windows (C:)");
+ dataModel.addLeaf(te, "Documents (D:)");
+
+ dataModel.addBranch(te1, "Network", true);
+ dataModel.addBranch(te1, "Trash", true);
+
+ var te2 = dataModel.addBranch(null, "Inbox", true);
+
+ te = dataModel.addBranch(te2, "Spam", false);
+ for (var i = 1; i < 3000; i++)
+ {
+ dataModel.addLeaf(te, "Spam Message #" + i);
+ }
+
+ dataModel.addBranch(te2, "Sent", false);
+ dataModel.addBranch(te2, "Trash", false);
+ dataModel.addBranch(te2, "Data", false);
+ dataModel.addBranch(te2, "Edit", false);
+
+ dataModel.setData();
+
+ var newItem = 1;
+
+ /*
+ * Each time we get a treeOpenWithContent event, add yet another leaf node
+ * to the node being opened.
+ */
+ tree.addEventListener("treeOpenWithContent",
+ function(e)
+ {
+ alert('treeOpenWithContent ');
+ var node = e.getData();
+ dataModel.addLeaf(node.nodeId,
+ newItem.toString(),
+ false);
+ newItem++;
+ });
+
+ tree.addEventListener("treeClose",
+ function(e)
+ {
+ alert('treeClose ');
+ });
+
+ /*
+ * We handle opening an empty folder specially. We demonstrate how to
+ * disable the open/close symbol once we've determined there's nothing in
+ * it. This feature might be used to dynamically retrieve the contents of
+ * the folder, and if nothing is available, indicate it by removing the
+ * open/close symbol.
+ */
+ tree.addEventListener("treeOpenWhileEmpty",
+ function(e)
+ {
+ alert('treeOpenWhileEmpty');
+ var node = e.getData();
+ tree.setState(node.nodeId, { opened : null });
+ });
+
+
+ tree.addEventListener("changeSelection",
+ function(e)
+ {
+ var text = "Selected labels:";
+ var selectedNodes = e.getData();
+ for (i = 0; i < selectedNodes.length; i++)
+ {
+ text += "\n " + selectedNodes[i].label;
+ }
+ alert('changeSelection: ' + text);
+ });
+
+
+
+ var commandFrame = new qx.ui.groupbox.GroupBox("Control");
+ commandFrame.set({ top: 48, left: 520, right: 290, height: "auto" });
+ commandFrame.addToDocument();
+
+ // Create a combo box for the selection type
+ var o = new qx.ui.basic.Atom("Selection Mode: ");
+ o.set({ top: 6, left: 0 });
+ commandFrame.add(o);
+
+ o = new qx.ui.form.ComboBox();
+ o.set({ top: 20, left: 4, width: "100%" });
+ o.setEditable(false);
+
+ // Add the various selection types
+ var item = new qx.ui.form.ListItem("No Selection");
+ o.add(item);
+ var item = new qx.ui.form.ListItem("Single Selection");
+ o.add(item);
+ o.setSelected(item);
+ var item = new qx.ui.form.ListItem("Single Interval Selection");
+ o.add(item);
+ var item = new qx.ui.form.ListItem("Multiple Interval Selection");
+ o.add(item);
+
+ // We want to be notified if the selection changes
+ o.addEventListener(
+ "changeSelected",
+ function()
+ {
+ switch(this.getValue())
+ {
+ case "No Selection":
+ tree.setSelectionMode(
+ qx.ui.treevirtual.TreeVirtual.SelectionMode.NONE);
+ break;
+
+ case "Single Selection":
+ tree.setSelectionMode(
+ qx.ui.treevirtual.TreeVirtual.SelectionMode.SINGLE);
+ break;
+
+ case "Single Interval Selection":
+ tree.setSelectionMode(
+ qx.ui.treevirtual.TreeVirtual.SelectionMode.SINGLE_INTERVAL);
+ break;
+
+ case "Multiple Interval Selection":
+ tree.setSelectionMode(
+ qx.ui.treevirtual.TreeVirtual.SelectionMode.MULTIPLE_INTERVAL);
+ break;
+ }
+ });
+
+ commandFrame.add(o);
+
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/TreeVirtual_5.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/TreeVirtual_5.html
new file mode 100644
index 0000000000..08c73e12ea
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/TreeVirtual_5.html
@@ -0,0 +1,176 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Demonstrate use of multiple columns in a tree.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ // tree
+ var tree = new qx.ui.treevirtual.TreeVirtual([ "Tree", "Permissions" ]);
+ with (tree)
+ {
+ set({
+ left : 10,
+ top : 30,
+ width : 506,
+ bottom : 30,
+ border : qx.renderer.border.BorderPresets.getInstance().thinInset
+ });
+ setAlwaysShowOpenCloseSymbol(true);
+ setColumnWidth(0, 400);
+ setColumnWidth(1, 100);
+ };
+
+ tree.addToDocument();
+
+ // tree data model
+ var dataModel = tree.getDataModel();
+
+ var te1 = dataModel.addBranch(null, "Desktop", true);
+ dataModel.setState(te1,
+ {
+ labelStyle :
+ "background-color: red; " +
+ "color: white;" +
+ "font-weight: bold;"
+ });
+
+ var te1_1;
+
+ dataModel.addBranch(te1, "Files", true);
+
+ te1_1 = dataModel.addBranch(te1, "Workspace", true);
+ te = dataModel.addLeaf(te1_1, "Windows (C:)");
+ dataModel.setColumnData(te, 1, "-rwxr-xr-x");
+ te = dataModel.addLeaf(te1_1, "Documents (D:)");
+ dataModel.setColumnData(te, 1, "-rwxr-xr-x");
+
+ dataModel.addBranch(te1, "Network", true);
+
+ te = dataModel.addBranch(te1, "Trash", true);
+ dataModel.setState(te,
+ {
+ cellStyle : "background-color: cyan;"
+ });
+
+
+ var te2 = dataModel.addBranch(null, "Inbox", true);
+
+ te = dataModel.addBranch(te2, "Spam", false);
+
+ for (var i = 1; i < 3000; i++)
+ {
+ dataModel.addLeaf(te, "Spam Message #" + i);
+ }
+
+ dataModel.addBranch(te2, "Sent", false);
+ dataModel.addBranch(te2, "Trash", false);
+ dataModel.addBranch(te2, "Data", false);
+ dataModel.addBranch(te2, "Edit", false);
+
+ dataModel.setData();
+
+ var commandFrame = new qx.ui.groupbox.GroupBox("Control");
+ commandFrame.set({ top: 48, left: 520, width: "auto", height: "auto" });
+ commandFrame.addToDocument();
+
+ var o = new qx.ui.basic.Atom("Current Selection: ");
+ o.set({ left: 0, top: 6 });
+ commandFrame.add(o);
+
+ o = new qx.ui.form.TextField();
+ o.set({ left: 4, right: 0, top: 20, readOnly: true });
+ commandFrame.add(o);
+ tree.addEventListener(
+ "changeSelection",
+ function(e)
+ {
+ // Get the list of selected nodes. We're in single-selection mode, so
+ // there will be only one of them.
+ var nodes = e.getData();
+ this.setValue(tree.getHierarchy(nodes[0].nodeId).join('/'));
+ buttonRemove.setEnabled(true);
+ },
+ o);
+
+ var buttonRemove = new qx.ui.form.Button("Remove");
+ buttonRemove.set({ top: 42, left: 0, enabled: false });
+ commandFrame.add(buttonRemove);
+ buttonRemove.addEventListener(
+ "execute",
+ function(e)
+ {
+ selectedNodes = tree.getSelectedNodes();
+ for (var i = 0; i < selectedNodes.length; i++)
+ {
+ dataModel.prune(selectedNodes[i].nodeId);
+ dataModel.setData();
+ }
+ });
+
+ o = new qx.ui.form.CheckBox("Use tree lines?");
+ o.set({ top: 80, left: 0, checked: true });
+ commandFrame.add(o);
+ o.addEventListener("changeChecked",
+ function(e)
+ {
+ tree.setUseTreeLines(e.getData());
+ });
+
+ o = new qx.ui.form.CheckBox("Jens Lautenbacher mode?");
+ o.set({ top: 100, left: 0, checked: false });
+ commandFrame.add(o);
+ o.addEventListener("changeChecked",
+ function(e)
+ {
+ tree.setJensLautenbacherMode(e.getData());
+ });
+
+ o = new qx.ui.form.CheckBox("Always show open/close symbol?");
+ o.set({ top: 120, left: 0, checked: true });
+ commandFrame.add(o);
+ o.addEventListener("changeChecked",
+ function(e)
+ {
+ tree.setAlwaysShowOpenCloseSymbol(e.getData());
+ });
+
+ o = new qx.ui.form.CheckBox("Remove open/close if found empty?");
+ o.set({ top: 140, left: 0, checked: true });
+ commandFrame.add(o);
+ tree.addEventListener("treeOpenWhileEmpty",
+ function(e)
+ {
+ if (this.getChecked())
+ {
+ var node = e.getData();
+ tree.setState(node.nodeId, { opened : null });
+ }
+ },
+ o);
+
+ o = new qx.ui.form.CheckBox("Open/close click selects row?");
+ o.set({ top: 160, left: 0, checked: false });
+ commandFrame.add(o);
+ o.addEventListener("changeChecked",
+ function(e)
+ {
+ tree.setOpenCloseClickSelectsRow(e.getData());
+ });
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/TreeVirtual_6.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/TreeVirtual_6.html
new file mode 100644
index 0000000000..65b5b9d397
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/TreeVirtual_6.html
@@ -0,0 +1,135 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Demonstrate providing initially-selected tree nodes.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ // tree
+ var tree = new qx.ui.treevirtual.TreeVirtual("Tree");
+ with (tree)
+ {
+ set({
+ left : 10,
+ top : 30,
+ width : 400,
+ bottom : 30,
+ border : qx.renderer.border.BorderPresets.getInstance().thinInset
+ });
+ setColumnWidth(0, 400);
+ setAlwaysShowOpenCloseSymbol(true);
+ };
+
+ tree.setSelectionMode(
+ qx.ui.treevirtual.TreeVirtual.SelectionMode.MULTIPLE_INTERVAL);
+
+ // Add the tree to the document
+ tree.addToDocument();
+
+ // tree data model
+ var dataModel = tree.getDataModel();
+
+ var te1 = dataModel.addBranch(null, "Desktop", true);
+
+ var x;
+ var te;
+ dataModel.addBranch(te1, "Files", true);
+
+ te = dataModel.addBranch(te1, "Workspace", true);
+ x = dataModel.addLeaf(te, "Windows (C:)");
+ tree.setState(x, { bSelected : true });
+ x = dataModel.addLeaf(te, "Documents (D:)");
+ tree.setState(x, { bSelected : true });
+
+ dataModel.addBranch(te1, "Network", true);
+ dataModel.addBranch(te1, "Trash", true);
+
+ var te2 = dataModel.addBranch(null, "Inbox", true);
+
+ te = dataModel.addBranch(te2, "Spam", false);
+ for (var i = 1; i < 3000; i++)
+ {
+ dataModel.addLeaf(te, "Spam Message #" + i);
+ }
+
+ dataModel.addBranch(te2, "Sent", false);
+ dataModel.addBranch(te2, "Trash", false);
+ dataModel.addBranch(te2, "Data", false);
+ dataModel.addBranch(te2, "Edit", false);
+
+ dataModel.setData();
+
+ var newItem = 1;
+
+ var commandFrame = new qx.ui.groupbox.GroupBox("Control");
+ commandFrame.set({ top: 48, left: 520, right: 290, height: "auto" });
+ commandFrame.addToDocument();
+
+ // Create a combo box for the selection type
+ var o = new qx.ui.basic.Atom("Selection Mode: ");
+ o.set({ top: 6, left: 0 });
+ commandFrame.add(o);
+
+ o = new qx.ui.form.ComboBox();
+ o.set({ top: 20, left: 4, width: "100%" });
+ o.setEditable(false);
+
+ // Add the various selection types
+ var item = new qx.ui.form.ListItem("No Selection");
+ o.add(item);
+ var item = new qx.ui.form.ListItem("Single Selection");
+ o.add(item);
+ var item = new qx.ui.form.ListItem("Single Interval Selection");
+ o.add(item);
+ var item = new qx.ui.form.ListItem("Multiple Interval Selection");
+ o.add(item);
+ o.setSelected(item);
+
+ // We want to be notified if the selection changes
+ o.addEventListener(
+ "changeSelected",
+ function()
+ {
+ switch(this.getValue())
+ {
+ case "No Selection":
+ tree.setSelectionMode(
+ qx.ui.treevirtual.TreeVirtual.SelectionMode.NONE);
+ break;
+
+ case "Single Selection":
+ tree.setSelectionMode(
+ qx.ui.treevirtual.TreeVirtual.SelectionMode.SINGLE);
+ break;
+
+ case "Single Interval Selection":
+ tree.setSelectionMode(
+ qx.ui.treevirtual.TreeVirtual.SelectionMode.SINGLE_INTERVAL);
+ break;
+
+ case "Multiple Interval Selection":
+ tree.setSelectionMode(
+ qx.ui.treevirtual.TreeVirtual.SelectionMode.MULTIPLE_INTERVAL);
+ break;
+ }
+ });
+
+ commandFrame.add(o);
+
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Tree_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Tree_1.html
new file mode 100644
index 0000000000..1a7155ce11
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Tree_1.html
@@ -0,0 +1,171 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Introducing qx.ui.tree.Tree. A first small example.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var t = new qx.ui.tree.Tree("Root");
+
+ with(t)
+ {
+ setBackgroundColor(255);
+ setBorder(qx.renderer.border.BorderPresets.getInstance().inset);
+ setOverflow("scrollY");
+
+ setHeight(null);
+ setTop(48);
+ setLeft(20);
+ setWidth(200);
+ setBottom(48);
+ };
+
+ qx.ui.core.ClientDocument.getInstance().add(t);
+
+
+ var te1 = new qx.ui.tree.TreeFolder("Desktop");
+ t.add(te1);
+
+ desktop = te1;
+
+ var te1_1 = new qx.ui.tree.TreeFolder("Files");
+ var te1_2 = new qx.ui.tree.TreeFolder("Workspace");
+ var te1_3 = new qx.ui.tree.TreeFolder("Network");
+ var te1_4 = new qx.ui.tree.TreeFolder("Trash");
+
+ te1.add(te1_1, te1_2, te1_3, te1_4);
+
+
+ var te1_2_1 = new qx.ui.tree.TreeFile("Windows (C:)");
+ var te1_2_2 = new qx.ui.tree.TreeFile("Documents (D:)");
+
+ te1_2.add(te1_2_1, te1_2_2);
+
+ arbeitsplatz = te1_2;
+
+
+ var te2 = new qx.ui.tree.TreeFolder("Inbox");
+ posteingang = te2;
+
+ var te2_1 = new qx.ui.tree.TreeFolder("Presets");
+ var te2_2 = new qx.ui.tree.TreeFolder("Sent");
+ var te2_3 = new qx.ui.tree.TreeFolder("Trash");
+ var te2_4 = new qx.ui.tree.TreeFolder("Data");
+ var te2_5 = new qx.ui.tree.TreeFolder("Edit");
+
+
+
+ t.add(te2);
+ qx.ui.core.ClientDocument.getInstance().add(t);
+
+
+
+
+
+
+ var commandFrame = new qx.ui.groupbox.GroupBox("Control");
+
+ with(commandFrame)
+ {
+ setTop(48);
+ setLeft(250);
+
+ setWidth("auto");
+ setHeight("auto");
+ };
+
+ qx.ui.core.ClientDocument.getInstance().add(commandFrame);
+
+
+
+
+ var tCurrentLabel = new qx.ui.basic.Atom("Current Folder: ");
+
+ with(tCurrentLabel)
+ {
+ setLeft(0);
+ setTop(0);
+ };
+
+ commandFrame.add(tCurrentLabel);
+
+
+
+ var tCurrentInput = new qx.ui.form.TextField;
+
+ with(tCurrentInput)
+ {
+ setLeft(0);
+ setRight(0);
+ setTop(20);
+
+ setReadOnly(true);
+ };
+
+ commandFrame.add(tCurrentInput);
+
+ t.getManager().addEventListener("changeSelection", function(e) {
+ tCurrentInput.setValue(e.getData()[0]._labelObject.getHtml());
+ });
+
+
+
+ var tDoubleClick = new qx.ui.form.CheckBox("Use double click?");
+
+ with(tDoubleClick) {
+ setTop(60);
+ setLeft(0);
+ };
+
+ commandFrame.add(tDoubleClick);
+
+ tDoubleClick.addEventListener("changeChecked", function(e) { t.setUseDoubleClick(e.getData()); });
+
+
+
+ var tTreeLines = new qx.ui.form.CheckBox("Use tree lines?");
+
+ with(tTreeLines) {
+ setTop(80);
+ setLeft(0);
+ setChecked(true);
+ };
+
+ commandFrame.add(tTreeLines);
+
+ tTreeLines.addEventListener("changeChecked", function(e) { t.setUseTreeLines(e.getData()); });
+
+
+
+
+ var vShowItems = new qx.ui.form.Button("Show Items");
+
+ with(vShowItems) {
+ setTop(100);
+ setLeft(0);
+ };
+
+ commandFrame.add(vShowItems);
+
+ vShowItems.addEventListener("execute", function(e) {
+ alert(t.getItems());
+ });
+
+
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Tree_2.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Tree_2.html
new file mode 100644
index 0000000000..4c05981f8a
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Tree_2.html
@@ -0,0 +1,294 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>This example is bigger than the previous one.</p>
+ </div>
+
+ <div id="control" style="display:none">
+ <p>
+ <strong>Create</strong>:
+ <br/>
+ Push into:
+ <a href="javascript://" onclick="void(root.add(new qx.ui.tree.TreeFile('Foo Bar')))">Root</a>
+ <a href="javascript://" onclick="void(inbox.add(new qx.ui.tree.TreeFile('Foo Bar')))">Inbox</a>
+ <a href="javascript://" onclick="void(workspace.add(new qx.ui.tree.TreeFile('Foo Bar')))">Workspace</a>
+ <a href="javascript://" onclick="void(desktop.add(new qx.ui.tree.TreeFile('Foo Bar')))">Desktop</a>
+ <a href="javascript://" onclick="void(edit.add(new qx.ui.tree.TreeFile('Foo Bar')))">Edit</a>
+ <a href="javascript://" onclick="void(spam.add(new qx.ui.tree.TreeFile('Foo Bar')))">Spam</a>
+ </p>
+
+ <hr/>
+
+ <p>
+ <strong>Inbox</strong>:
+ <a href="javascript://" onclick="void(inbox.getParent().remove(inbox))">Delete</a>
+ <br/>
+ Push into:
+ <a href="javascript://" onclick="void(root.add(inbox))">Root</a>
+ <a href="javascript://" onclick="void(workspace.add(inbox))">Workspace</a>
+ <a href="javascript://" onclick="void(desktop.add(inbox))">Desktop</a>
+ <a href="javascript://" onclick="void(edit.add(inbox))">Edit</a>
+ <a href="javascript://" onclick="void(spam.add(inbox))">Spam</a>
+ </p>
+
+ <p>
+ <strong>Workspace</strong>:
+ <a href="javascript://" onclick="void(workspace.getParent().remove(workspace))">Delete</a>
+ <br/>
+ Push into:
+ <a href="javascript://" onclick="void(root.add(workspace))">Root</a>
+ <a href="javascript://" onclick="void(inbox.add(workspace))">Inbox</a>
+ <a href="javascript://" onclick="void(desktop.add(workspace))">Desktop</a>
+ <a href="javascript://" onclick="void(edit.add(workspace))">Edit</a>
+ <a href="javascript://" onclick="void(spam.add(workspace))">Spam</a>
+ <br/>
+ Push into before:
+ <a href="javascript://" onclick="void(root.addBefore(workspace, desktop))">Root (before:Desktop)</a>
+ <a href="javascript://" onclick="void(root.addBefore(workspace, inbox))">Root (before:Inbox)</a>
+ <a href="javascript://" onclick="void(inbox.addBefore(workspace, spam))">Inbox (before:Spam)</a>
+ <a href="javascript://" onclick="void(inbox.addBefore(workspace, edit))">Inbox (before:Edit)</a>
+ <br/>
+ Push into after:
+ <a href="javascript://" onclick="void(root.addAfter(workspace, desktop))">Root (after:Desktop)</a>
+ <a href="javascript://" onclick="void(root.addAfter(workspace, inbox))">Root (after:Inbox)</a>
+ <a href="javascript://" onclick="void(inbox.addAfter(workspace, spam))">Inbox (after:Spam)</a>
+ <a href="javascript://" onclick="void(inbox.addAfter(workspace, edit))">Inbox (after:Edit)</a>
+ <br/>
+ Add at:
+ <a href="javascript://" onclick="void(root.addAt(workspace, 0))">Root (at:0)</a>
+ <a href="javascript://" onclick="void(root.addAt(workspace, 1))">Root (at:1)</a>
+ <a href="javascript://" onclick="void(root.addAt(workspace, 2))">Root (at:2)</a>
+ <a href="javascript://" onclick="void(inbox.addAt(workspace, 0))">Inbox (at:0)</a>
+ <a href="javascript://" onclick="void(inbox.addAt(workspace, 3))">Inbox (at:3)</a>
+ <a href="javascript://" onclick="void(inbox.addAt(workspace, 5))">Inbox (at:5)</a>
+ </p>
+ </div>
+
+ <script type="text/javascript">
+ var desktop, workspace, root, inbox, edit, spam;
+
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var t = new qx.ui.tree.Tree("Root");
+
+ with(t)
+ {
+ setBackgroundColor(255);
+ setBorder(qx.renderer.border.BorderPresets.getInstance().inset);
+ setOverflow("scrollY");
+
+ setHeight(null);
+ setTop(48);
+ setLeft(20);
+ setWidth(200);
+ setBottom(48);
+ };
+
+ root = t;
+
+ qx.ui.core.ClientDocument.getInstance().add(t);
+
+ var te1 = new qx.ui.tree.TreeFolder("Desktop");
+ t.add(te1);
+
+ desktop = te1;
+
+ var te1_1 = new qx.ui.tree.TreeFolder("Files");
+ var te1_2 = new qx.ui.tree.TreeFolder("Workspace");
+ var te1_3 = new qx.ui.tree.TreeFolder("Network");
+ var te1_4 = new qx.ui.tree.TreeFolder("Trash");
+
+ te1.add(te1_1, te1_2, te1_3, te1_4);
+
+
+ var te1_2_1 = new qx.ui.tree.TreeFile("Windows (C:)");
+ var te1_2_2 = new qx.ui.tree.TreeFile("Documents (D:)");
+
+ te1_2.add(te1_2_1, te1_2_2);
+
+ workspace = te1_2;
+
+
+ var te2 = new qx.ui.tree.TreeFolder("Inbox");
+ inbox = te2;
+
+ var te2_1 = new qx.ui.tree.TreeFolder("Presets");
+ var te2_2 = new qx.ui.tree.TreeFolder("Sent");
+ var te2_3 = new qx.ui.tree.TreeFolder("Trash");
+ var te2_4 = new qx.ui.tree.TreeFolder("Data");
+ var te2_5 = new qx.ui.tree.TreeFolder("Edit");
+
+ edit = te2_5;
+
+ var te2_5_1 = new qx.ui.tree.TreeFolder("Chat");
+ var te2_5_2 = new qx.ui.tree.TreeFolder("Pustefix");
+ var te2_5_3 = new qx.ui.tree.TreeFolder("TINC");
+
+ var te2_5_3_1 = new qx.ui.tree.TreeFolder("Announce");
+ var te2_5_3_2 = new qx.ui.tree.TreeFolder("Devel");
+
+ te2_5_3.add(te2_5_3_1, te2_5_3_2);
+
+ te2_5.add(te2_5_1, te2_5_2, te2_5_3);
+
+ var te2_6 = new qx.ui.tree.TreeFolder("Lists");
+
+ var te2_6_1 = new qx.ui.tree.TreeFolder("Relations");
+ var te2_6_2 = new qx.ui.tree.TreeFolder("Company");
+ var te2_6_3 = new qx.ui.tree.TreeFolder("Questions");
+ var te2_6_4 = new qx.ui.tree.TreeFolder("Internal");
+ var te2_6_5 = new qx.ui.tree.TreeFolder("Products");
+ var te2_6_6 = new qx.ui.tree.TreeFolder("Press");
+ var te2_6_7 = new qx.ui.tree.TreeFolder("Development");
+ var te2_6_8 = new qx.ui.tree.TreeFolder("Competition");
+
+ te2_6.add(te2_6_1, te2_6_2, te2_6_3, te2_6_4, te2_6_5, te2_6_6, te2_6_7, te2_6_8);
+
+ var te2_7 = new qx.ui.tree.TreeFolder("Personal");
+
+ var te2_7_1 = new qx.ui.tree.TreeFolder("Bugs");
+ var te2_7_2 = new qx.ui.tree.TreeFolder("Family");
+ var te2_7_3 = new qx.ui.tree.TreeFolder("Projects");
+ var te2_7_4 = new qx.ui.tree.TreeFolder("Holiday");
+
+ te2_7.add(te2_7_1, te2_7_2, te2_7_3, te2_7_4);
+
+ var te2_8 = new qx.ui.tree.TreeFolder("Big");
+
+ for (var i=0;i<10; i++) {
+ te2_8.add(new qx.ui.tree.TreeFolder("Item " + i));
+ };
+
+ var te2_9 = new qx.ui.tree.TreeFolder("Spam");
+ spam = te2_9;
+
+ te2.add(te2_1, te2_2, te2_3, te2_4, te2_5, te2_6, te2_7, te2_8, te2_9);
+
+ t.add(te2);
+ qx.ui.core.ClientDocument.getInstance().add(t);
+
+
+
+
+
+
+ var commandFrame = new qx.ui.groupbox.GroupBox("Control");
+
+ with(commandFrame)
+ {
+ setTop(48);
+ setLeft(250);
+
+ setWidth("auto");
+ setHeight("auto");
+ };
+
+ qx.ui.core.ClientDocument.getInstance().add(commandFrame);
+
+
+
+
+ var tCurrentLabel = new qx.ui.basic.Atom("Current Folder: ");
+
+ with(tCurrentLabel)
+ {
+ setLeft(0);
+ setTop(0);
+ };
+
+ commandFrame.add(tCurrentLabel);
+
+
+
+ var tCurrentInput = new qx.ui.form.TextField;
+
+ with(tCurrentInput)
+ {
+ setLeft(0);
+ setRight(0);
+ setTop(20);
+
+ setReadOnly(true);
+ };
+
+ commandFrame.add(tCurrentInput);
+
+ t.getManager().addEventListener("changeSelection", function(e) {
+ tCurrentInput.setValue(e.getData()[0]._labelObject.getHtml());
+ });
+
+
+
+ var tDoubleClick = new qx.ui.form.CheckBox("Use double click?");
+
+ with(tDoubleClick) {
+ setTop(60);
+ setLeft(0);
+ };
+
+ commandFrame.add(tDoubleClick);
+
+ tDoubleClick.addEventListener("changeChecked", function(e) { t.setUseDoubleClick(e.getData()); });
+
+
+
+
+
+ var tTreeLines = new qx.ui.form.CheckBox("Use tree lines?");
+
+ with(tTreeLines) {
+ setTop(80);
+ setLeft(0);
+ setChecked(true);
+ };
+
+ commandFrame.add(tTreeLines);
+
+ tTreeLines.addEventListener("changeChecked", function(e) { t.setUseTreeLines(e.getData()); });
+
+
+
+
+
+
+
+
+
+
+ var ct1 = new qx.ui.basic.Label(document.getElementById("control").innerHTML);
+
+ with(ct1)
+ {
+ setWidth(300);
+ setRight(335);
+
+ setHeight(null);
+ setTop(48);
+ setBottom(48);
+
+ setOverflow("hidden");
+ setStyleProperty("whiteSpace", "normal");
+
+ setBackgroundColor("white");
+ setBorder(qx.renderer.border.BorderPresets.getInstance().groove);
+ setPadding(10);
+ };
+
+ qx.ui.core.ClientDocument.getInstance().add(ct1);
+
+
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Tree_3.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Tree_3.html
new file mode 100644
index 0000000000..28e6569855
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Tree_3.html
@@ -0,0 +1,201 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Nothing special, like the previous example but here the tree lines are by default off.</p>
+ <p>This allows you to easily compare the performance costs for the tree lines: Just compare this and the previous example.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var t = new qx.ui.tree.Tree("Root");
+
+ with(t)
+ {
+ setBackgroundColor(255);
+ setBorder(qx.renderer.border.BorderPresets.getInstance().inset);
+ setOverflow("scrollY");
+ setUseTreeLines(false);
+
+ setHeight(null);
+ setTop(48);
+ setLeft(20);
+ setWidth(200);
+ setBottom(48);
+ };
+
+ qx.ui.core.ClientDocument.getInstance().add(t);
+
+ var te1 = new qx.ui.tree.TreeFolder("Desktop");
+ t.add(te1);
+
+ desktop = te1;
+
+ var te1_1 = new qx.ui.tree.TreeFolder("Files");
+ var te1_2 = new qx.ui.tree.TreeFolder("Workspace");
+ var te1_3 = new qx.ui.tree.TreeFolder("Network");
+ var te1_4 = new qx.ui.tree.TreeFolder("Trash");
+
+ te1.add(te1_1, te1_2, te1_3, te1_4);
+
+
+ var te1_2_1 = new qx.ui.tree.TreeFile("Windows (C:)");
+ var te1_2_2 = new qx.ui.tree.TreeFile("Documents (D:)");
+
+ te1_2.add(te1_2_1, te1_2_2);
+
+ arbeitsplatz = te1_2;
+
+
+ var te2 = new qx.ui.tree.TreeFolder("Inbox");
+ posteingang = te2;
+
+ var te2_1 = new qx.ui.tree.TreeFolder("Presets");
+ var te2_2 = new qx.ui.tree.TreeFolder("Sent");
+ var te2_3 = new qx.ui.tree.TreeFolder("Trash");
+ var te2_4 = new qx.ui.tree.TreeFolder("Data");
+ var te2_5 = new qx.ui.tree.TreeFolder("Edit");
+
+ editieren = te2_5;
+
+ var te2_5_1 = new qx.ui.tree.TreeFolder("Chat");
+ var te2_5_2 = new qx.ui.tree.TreeFolder("Pustefix");
+ var te2_5_3 = new qx.ui.tree.TreeFolder("TINC");
+
+ var te2_5_3_1 = new qx.ui.tree.TreeFolder("Announce");
+ var te2_5_3_2 = new qx.ui.tree.TreeFolder("Devel");
+
+ te2_5_3.add(te2_5_3_1, te2_5_3_2);
+
+ te2_5.add(te2_5_1, te2_5_2, te2_5_3);
+
+ var te2_6 = new qx.ui.tree.TreeFolder("Lists");
+
+ var te2_6_1 = new qx.ui.tree.TreeFolder("Relations");
+ var te2_6_2 = new qx.ui.tree.TreeFolder("Company");
+ var te2_6_3 = new qx.ui.tree.TreeFolder("Questions");
+ var te2_6_4 = new qx.ui.tree.TreeFolder("Internal");
+ var te2_6_5 = new qx.ui.tree.TreeFolder("Products");
+ var te2_6_6 = new qx.ui.tree.TreeFolder("Press");
+ var te2_6_7 = new qx.ui.tree.TreeFolder("Development");
+ var te2_6_8 = new qx.ui.tree.TreeFolder("Competition");
+
+ te2_6.add(te2_6_1, te2_6_2, te2_6_3, te2_6_4, te2_6_5, te2_6_6, te2_6_7, te2_6_8);
+
+ var te2_7 = new qx.ui.tree.TreeFolder("Personal");
+
+ var te2_7_1 = new qx.ui.tree.TreeFolder("Bugs");
+ var te2_7_2 = new qx.ui.tree.TreeFolder("Family");
+ var te2_7_3 = new qx.ui.tree.TreeFolder("Projects");
+ var te2_7_4 = new qx.ui.tree.TreeFolder("Holiday");
+
+ te2_7.add(te2_7_1, te2_7_2, te2_7_3, te2_7_4);
+
+ var te2_8 = new qx.ui.tree.TreeFolder("Big");
+
+ for (var i=0;i<50; i++) {
+ te2_8.add(new qx.ui.tree.TreeFolder("Item " + i));
+ };
+
+ var te2_9 = new qx.ui.tree.TreeFolder("Spam");
+ spam = te2_9;
+
+ te2.add(te2_1, te2_2, te2_3, te2_4, te2_5, te2_6, te2_7, te2_8, te2_9);
+
+ t.add(te2);
+ qx.ui.core.ClientDocument.getInstance().add(t);
+
+
+
+
+
+
+ var commandFrame = new qx.ui.groupbox.GroupBox("Control");
+
+ with(commandFrame)
+ {
+ setTop(48);
+ setLeft(250);
+
+ setWidth("auto");
+ setHeight("auto");
+ };
+
+ qx.ui.core.ClientDocument.getInstance().add(commandFrame);
+
+
+
+
+ var tCurrentLabel = new qx.ui.basic.Atom("Current Folder: ");
+
+ with(tCurrentLabel)
+ {
+ setLeft(0);
+ setTop(0);
+ };
+
+ commandFrame.add(tCurrentLabel);
+
+
+
+ var tCurrentInput = new qx.ui.form.TextField;
+
+ with(tCurrentInput)
+ {
+ setLeft(0);
+ setRight(0);
+ setTop(20);
+
+ setReadOnly(true);
+ };
+
+ commandFrame.add(tCurrentInput);
+
+ t.getManager().addEventListener("changeSelection", function(e) {
+ tCurrentInput.setValue(e.getData()[0]._labelObject.getHtml());
+ });
+
+
+
+
+ var tDoubleClick = new qx.ui.form.CheckBox("Use double click?");
+
+ with(tDoubleClick) {
+ setTop(60);
+ setLeft(0);
+ };
+
+ commandFrame.add(tDoubleClick);
+
+ tDoubleClick.addEventListener("changeChecked", function(e) { t.setUseDoubleClick(e.getData()); });
+
+
+ var tTreeLines = new qx.ui.form.CheckBox("Use tree lines?");
+
+ with(tTreeLines) {
+ setTop(80);
+ setLeft(0);
+ setChecked(false);
+ };
+
+ commandFrame.add(tTreeLines);
+
+ tTreeLines.addEventListener("changeChecked", function(e) { t.setUseTreeLines(e.getData()); });
+
+
+
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Tree_4.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Tree_4.html
new file mode 100644
index 0000000000..f5d92844bb
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Tree_4.html
@@ -0,0 +1,40 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Test an empty tree</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var t = new qx.ui.tree.Tree("Root");
+
+ with(t)
+ {
+ setBackgroundColor(255);
+ setBorder(qx.renderer.border.BorderPresets.getInstance().inset);
+ setOverflow("scrollY");
+
+ setHeight(null);
+ setTop(48);
+ setLeft(20);
+ setWidth(200);
+ setBottom(48);
+ };
+
+ qx.ui.core.ClientDocument.getInstance().add(t);
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Tree_5.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Tree_5.html
new file mode 100644
index 0000000000..03ceb54281
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Tree_5.html
@@ -0,0 +1,148 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Drag and Drop between trees and inside a tree.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ function handleDragStart(e)
+ {
+ e.addData("qx.ui.tree.AbstractTreeElement", e.getCurrentTarget());
+ e.addAction("move");
+ e.startDrag();
+ };
+
+ function handleDragDrop(e)
+ {
+ var vType = e.getDropDataTypes()[0];
+ var vSource = e.getData(vType);
+ var vTarget = e.getCurrentTarget();
+
+ vSource.getTree().getManager().deselectAll();
+ vTarget.add(vSource);
+
+ e.stopPropagation();
+ };
+
+ function supportsDrop(vDragCache) {
+ return !vDragCache.sourceWidget.contains(this);
+ };
+
+ function handleDragOver(e)
+ {
+ var l = e.getTarget().getLabelObject();
+ l.setStyleProperty("textDecoration", "underline");
+ };
+
+ function handleDragOut(e)
+ {
+ var l = e.getTarget().getLabelObject();
+ l.removeStyleProperty("textDecoration");
+ };
+
+
+
+ var treeSource = new qx.ui.tree.Tree("Source");
+
+ with(treeSource)
+ {
+ setBackgroundColor(255);
+ setBorder(qx.renderer.border.BorderPresets.getInstance().thinInset);
+ setOverflow("scrollY");
+
+ setHeight(null);
+ setTop(48);
+ setLeft(20);
+ setWidth(200);
+ setBottom(48);
+
+ addEventListener("dragdrop", handleDragDrop);
+ addEventListener("dragover", handleDragOver);
+ addEventListener("dragout", handleDragOut);
+
+ setDropDataTypes(["qx.ui.tree.AbstractTreeElement"]);
+ };
+
+ qx.ui.core.ClientDocument.getInstance().add(treeSource);
+
+ for (var i=1, f; i<4; i++)
+ {
+ f = new qx.ui.tree.TreeFolder("Folder " + i);
+
+ f.addEventListener("dragstart", handleDragStart);
+ f.addEventListener("dragdrop", handleDragDrop);
+ f.addEventListener("dragover", handleDragOver);
+ f.addEventListener("dragout", handleDragOut);
+
+ f.setDropDataTypes(["qx.ui.tree.AbstractTreeElement"]);
+ f.supportsDrop = supportsDrop;
+
+ treeSource.add(f);
+
+ for (var j=1, g; j<4; j++)
+ {
+ g = new qx.ui.tree.TreeFolder("Subfolder " + j);
+
+ g.addEventListener("dragstart", handleDragStart);
+ g.addEventListener("dragdrop", handleDragDrop);
+ g.addEventListener("dragover", handleDragOver);
+ g.addEventListener("dragout", handleDragOut);
+
+ g.setDropDataTypes(["qx.ui.tree.AbstractTreeElement"]);
+ g.supportsDrop = supportsDrop;
+
+ f.add(g);
+
+ for (var k=1, h; k<4; k++)
+ {
+ h = new qx.ui.tree.TreeFile("File " + k);
+
+ h.addEventListener("dragstart", handleDragStart);
+
+ g.add(h);
+ };
+ };
+ };
+
+
+
+
+ var treeDest = new qx.ui.tree.Tree("Dest");
+
+ with(treeDest)
+ {
+ setBackgroundColor(255);
+ setBorder(qx.renderer.border.BorderPresets.getInstance().thinInset);
+ setOverflow("scrollY");
+
+ setHeight(null);
+ setTop(48);
+ setLeft(240);
+ setWidth(200);
+ setBottom(48);
+
+ addEventListener("dragdrop", handleDragDrop);
+ addEventListener("dragover", handleDragOver);
+ addEventListener("dragout", handleDragOut);
+
+ setDropDataTypes(["qx.ui.tree.AbstractTreeElement"]);
+ };
+
+ qx.ui.core.ClientDocument.getInstance().add(treeDest);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Tree_6.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Tree_6.html
new file mode 100644
index 0000000000..67f0dc42b2
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Tree_6.html
@@ -0,0 +1,231 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Drag and Drop between trees and inside a tree.</p>
+ <p>Added support for positioned move/insert (not complete yet!)</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var vLastIndex = null;
+
+ function handleDragStart(e)
+ {
+ e.addData("qx.ui.tree.AbstractTreeElement", e.getCurrentTarget());
+ e.addAction("move");
+ e.startDrag();
+ };
+
+ function handleDragDrop(e)
+ {
+ var vType = e.getDropDataTypes()[0];
+ var vSource = e.getData(vType);
+ var vTarget = e.getCurrentTarget();
+
+ vSource.getTree().getManager().deselectAll();
+
+ // this.debug("Add At: " + vLastIndex);
+
+ vLastIndex == null ? vTarget.addAtEnd(vSource) : vTarget.addBefore(vSource, vLastIndex);
+ vLastIndex = null;
+
+ e.stopPropagation();
+ treeMarkerLine.setStyleProperty("display", "none");
+ };
+
+ function supportsDrop(vDragCache) {
+ return !vDragCache.sourceWidget.contains(this);
+ };
+
+ function handleDragOver(e)
+ {
+ var l = e.getTarget().getLabelObject();
+ l.setStyleProperty("textDecoration", "underline");
+ };
+
+ function handleDragOut(e)
+ {
+ var l = e.getTarget().getLabelObject();
+ l.removeStyleProperty("textDecoration");
+ };
+
+ function handleDragEnd(e)
+ {
+ vLastIndex = null;
+ treeMarkerLine.setStyleProperty("display", "none");
+ };
+
+ function handleDragMove(e)
+ {
+ vLastIndex = null;
+
+ var vTarget = e.getTarget();
+
+ if (!vTarget || !(vTarget instanceof qx.ui.tree.TreeFolder))
+ {
+ treeMarkerLine.setStyleProperty("display", "none");
+ return;
+ };
+
+ var vContainer = vTarget.getContainerObject();
+
+ if (!vContainer)
+ {
+ treeMarkerLine.setStyleProperty("display", "none");
+ return;
+ };
+
+ var vChildren = vContainer.getVisibleChildren();
+ var vChildrenLength = vChildren.length;
+ var vEventTop = e.getPageY();
+
+ for (var i=0, vChild, vTop; i<vChildrenLength; i++)
+ {
+ vChild = vChildren[i];
+
+ vTop = qx.html.Location.getPageBoxTop(vChild.getElement());
+ if ((vTop - vEventTop) > -4 && (vTop - vEventTop) < 4)
+ {
+ if (vEventTop > vTop && vChild.isFirstChild()) {
+ continue;
+ };
+
+ treeMarkerLine._applyRuntimeTop(vTop+1);
+ treeMarkerLine._applyRuntimeLeft(QxDom.getComputedPageBoxLeft(vChild.getLabelObject().getElement()) - 20);
+
+ treeMarkerLine.removeStyleProperty("display");
+
+ // this.debug("Index: " + vLastIndex + " :: " + vEventTop + " <> " + vTop);
+ vLastIndex = vChild;
+
+ return;
+ };
+ };
+
+ treeMarkerLine.setStyleProperty("display", "none");
+ };
+
+
+
+ var treeMarkerLine = new qx.ui.basic.Terminator;
+
+ treeMarkerLine.setHeight(2);
+ treeMarkerLine.setBackgroundColor("#335EA8");
+ treeMarkerLine.setWidth(20);
+ treeMarkerLine.setZIndex(1e7);
+ treeMarkerLine.setAnonymous(true);
+ treeMarkerLine.setStyleProperty("display", "none");
+
+ qx.ui.core.ClientDocument.getInstance().add(treeMarkerLine);
+
+
+
+ var treeSource = new qx.ui.tree.Tree("Source");
+
+ with(treeSource)
+ {
+ setBackgroundColor(255);
+ setBorder(qx.renderer.border.BorderPresets.getInstance().thinInset);
+ setOverflow("scrollY");
+
+ setHeight(null);
+ setTop(48);
+ setLeft(20);
+ setWidth(200);
+ setBottom(48);
+
+ addEventListener("dragdrop", handleDragDrop);
+ addEventListener("dragover", handleDragOver);
+ addEventListener("dragout", handleDragOut);
+ addEventListener("dragmove", handleDragMove);
+
+ setDropDataTypes(["qx.ui.tree.AbstractTreeElement"]);
+ };
+
+ qx.ui.core.ClientDocument.getInstance().add(treeSource);
+
+ for (var i=1, f; i<3; i++)
+ {
+ f = new qx.ui.tree.TreeFolder("Folder " + i);
+
+ f.addEventListener("dragstart", handleDragStart);
+ f.addEventListener("dragdrop", handleDragDrop);
+ f.addEventListener("dragover", handleDragOver);
+ f.addEventListener("dragout", handleDragOut);
+ f.addEventListener("dragend", handleDragEnd);
+
+ f.setDropDataTypes(["qx.ui.tree.AbstractTreeElement"]);
+ f.supportsDrop = supportsDrop;
+
+ treeSource.add(f);
+
+ for (var j=1, g; j<6; j++)
+ {
+ g = new qx.ui.tree.TreeFolder("Subfolder " + j);
+
+ g.addEventListener("dragstart", handleDragStart);
+ g.addEventListener("dragdrop", handleDragDrop);
+ g.addEventListener("dragover", handleDragOver);
+ g.addEventListener("dragout", handleDragOut);
+ g.addEventListener("dragend", handleDragEnd);
+
+ g.setDropDataTypes(["qx.ui.tree.AbstractTreeElement"]);
+ g.supportsDrop = supportsDrop;
+
+ f.add(g);
+
+ for (var k=1, h; k<9; k++)
+ {
+ h = new qx.ui.tree.TreeFile("File " + k);
+
+ h.addEventListener("dragstart", handleDragStart);
+
+ g.add(h);
+ };
+ };
+ };
+
+
+
+
+
+
+ var treeDest = new qx.ui.tree.Tree("Dest");
+
+ with(treeDest)
+ {
+ setBackgroundColor(255);
+ setBorder(qx.renderer.border.BorderPresets.getInstance().thinInset);
+ setOverflow("scrollY");
+
+ setHeight(null);
+ setTop(48);
+ setLeft(240);
+ setWidth(200);
+ setBottom(48);
+
+ addEventListener("dragdrop", handleDragDrop);
+ addEventListener("dragover", handleDragOver);
+ addEventListener("dragout", handleDragOut);
+ addEventListener("dragmove", handleDragMove);
+
+ setDropDataTypes(["qx.ui.tree.AbstractTreeElement"]);
+ };
+
+ qx.ui.core.ClientDocument.getInstance().add(treeDest);
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Tree_7.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Tree_7.html
new file mode 100644
index 0000000000..057160a268
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Tree_7.html
@@ -0,0 +1,233 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Trying dynamic Folder and File creation and deletion.</p>
+ </div>
+
+ <script type="text/javascript">
+
+ function createItems (t) {
+ var te1 = new qx.ui.tree.TreeFolder("Desktop");
+ t.add(te1);
+
+ desktop = te1;
+
+ var te1_1 = new qx.ui.tree.TreeFolder("Files");
+ var te1_2 = new qx.ui.tree.TreeFolder("Workspace");
+ var te1_3 = new qx.ui.tree.TreeFolder("Network");
+ var te1_4 = new qx.ui.tree.TreeFolder("Trash");
+
+ te1.add(te1_1, te1_2, te1_3, te1_4);
+
+
+ var te1_2_1 = new qx.ui.tree.TreeFile("Windows (C:)");
+ var te1_2_2 = new qx.ui.tree.TreeFile("Documents (D:)");
+
+ te1_2.add(te1_2_1, te1_2_2);
+
+ arbeitsplatz = te1_2;
+
+
+ var te2 = new qx.ui.tree.TreeFolder("Inbox");
+ posteingang = te2;
+
+ var te2_1 = new qx.ui.tree.TreeFolder("Presets");
+ var te2_2 = new qx.ui.tree.TreeFolder("Sent");
+ var te2_3 = new qx.ui.tree.TreeFolder("Trash");
+ var te2_4 = new qx.ui.tree.TreeFolder("Data");
+ var te2_5 = new qx.ui.tree.TreeFolder("Edit");
+
+ t.add(te2);
+ }
+
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var t = new qx.ui.tree.Tree("Root");
+
+ with(t)
+ {
+ setBackgroundColor(255);
+ setBorder(qx.renderer.border.BorderPresets.getInstance().inset);
+ setOverflow("scrollY");
+
+ setHeight(null);
+ setTop(48);
+ setLeft(20);
+ setWidth(200);
+ setBottom(48);
+ };
+
+ qx.ui.core.ClientDocument.getInstance().add(t);
+
+
+
+ var commandFrame = new qx.ui.groupbox.GroupBox("Control");
+
+ with(commandFrame)
+ {
+ setTop(48);
+ setLeft(250);
+
+ setWidth("auto");
+ setHeight("auto");
+ };
+
+ qx.ui.core.ClientDocument.getInstance().add(commandFrame);
+
+
+
+
+ var tCurrentLabel = new qx.ui.basic.Atom("Current Folder: ");
+
+ with(tCurrentLabel)
+ {
+ setLeft(0);
+ setTop(0);
+ };
+
+ commandFrame.add(tCurrentLabel);
+
+
+
+ var tCurrentInput = new qx.ui.form.TextField;
+
+ with(tCurrentInput)
+ {
+ setLeft(0);
+ setRight(0);
+ setTop(20);
+
+ setReadOnly(true);
+ };
+
+ commandFrame.add(tCurrentInput);
+
+ t.getManager().addEventListener("changeSelection", function(e) {
+ if(e.getData()[0]) {
+ tCurrentInput.setValue(e.getData()[0]._labelObject.getHtml());
+ this.debug('classname: ' + e.getData()[0].classname);
+ }
+ else {
+ tCurrentInput.setValue('');
+ }
+ });
+
+
+
+ var tDoubleClick = new qx.ui.form.CheckBox("Use double click?");
+
+ with(tDoubleClick) {
+ setTop(60);
+ setLeft(0);
+ };
+
+ commandFrame.add(tDoubleClick);
+
+ tDoubleClick.addEventListener("changeChecked", function(e) { t.setUseDoubleClick(e.getData()); });
+
+
+
+ var tTreeLines = new qx.ui.form.CheckBox("Use tree lines?");
+
+ with(tTreeLines) {
+ setTop(80);
+ setLeft(0);
+ setChecked(true);
+ };
+
+ commandFrame.add(tTreeLines);
+
+ tTreeLines.addEventListener("changeChecked", function(e) { t.setUseTreeLines(e.getData()); });
+
+
+
+
+ var vShowItems = new qx.ui.form.Button("Show Items");
+
+ with(vShowItems) {
+ setTop(100);
+ setLeft(0);
+ };
+
+ commandFrame.add(vShowItems);
+
+ vShowItems.addEventListener("execute", function(e) {
+ alert(t.getItems());
+ });
+
+
+ var vDestroyTreeContent = new qx.ui.form.Button("Destroy tree content");
+
+ with(vDestroyTreeContent) {
+ setTop(180);
+ setLeft(0);
+ };
+
+ commandFrame.add(vDestroyTreeContent);
+
+ vDestroyTreeContent.addEventListener("execute", function(e) {
+ t.destroyContent();
+ });
+
+
+ var vCreateItems = new qx.ui.form.Button("Create items");
+
+ with(vCreateItems) {
+ setTop(140);
+ setLeft(0);
+ };
+
+ commandFrame.add(vCreateItems);
+
+ vCreateItems.addEventListener("execute", function(e) {
+ createItems(t);
+ });
+
+ var vDestroySelectedItem = new qx.ui.form.Button("Destroy selected item");
+
+ with(vDestroySelectedItem) {
+ setTop(220);
+ setLeft(0);
+ };
+
+ commandFrame.add(vDestroySelectedItem);
+
+ vDestroySelectedItem.addEventListener("execute", function(e) {
+ var vItem = t.getManager().getSelectedItem();
+ if(vItem) {
+ vItem.destroy();
+ }
+ });
+
+
+ var vDestroyContenSelectedItem = new qx.ui.form.Button("Destroy content of selected item");
+
+ with(vDestroyContenSelectedItem) {
+ setTop(260);
+ setLeft(0);
+ };
+
+ commandFrame.add(vDestroyContenSelectedItem);
+
+ vDestroyContenSelectedItem.addEventListener("execute", function(e) {
+ var vItem = t.getManager().getSelectedItem();
+ if(vItem && vItem instanceof qx.ui.tree.TreeFolder) {
+ vItem.destroyContent();
+ }
+ });
+
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Umlauts_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Umlauts_1.html
new file mode 100644
index 0000000000..f321919cbb
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Umlauts_1.html
@@ -0,0 +1,26 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Test some Umlauts methods from the String.prototype.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ alert("Umlauts Short: " + qx.util.Normalization.umlautsShort("äöüÄÖÜß"))
+ alert("Umlauts Long: " + qx.util.Normalization.umlautsLong("äöüÄÖÜß"))
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/VerticalBoxLayout_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/VerticalBoxLayout_1.html
new file mode 100644
index 0000000000..5c820b0bda
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/VerticalBoxLayout_1.html
@@ -0,0 +1,1257 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ Tests for the new implementation of the qx.ui.layout.VerticalBoxLayout widget.
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var cl_white = new qx.renderer.color.Color("white");
+ var cl_blue = new qx.renderer.color.Color("blue");
+ var cl_yellow = new qx.renderer.color.Color("yellow");
+ var cl_green = new qx.renderer.color.Color("green");
+ var cl_orange = new qx.renderer.color.Color("orange");
+ var cl_purple = new qx.renderer.color.Color("purple");
+ var cl_aqua = new qx.renderer.color.Color("aqua");
+ var cl_fuchsia = new qx.renderer.color.Color("fuchsia");
+
+ /* ***********************************************
+
+ EXAMPLE ONE:
+ TOP ALIGN
+
+ *********************************************** */
+
+ var hbl1 = new qx.ui.layout.VerticalBoxLayout;
+
+ hbl1.setTop(48);
+ hbl1.setLeft(20);
+ hbl1.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ hbl1.setWidth("auto")
+ hbl1.setBottom(48);
+
+ hbl1.setSpacing(4);
+ hbl1.setPadding(8);
+
+ hbl1.setHorizontalChildrenAlign("right");
+
+
+ var w1_1 = new qx.ui.layout.CanvasLayout;
+ w1_1.setHeight(25);
+ w1_1.setWidth(25);
+ w1_1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w1_1.setBackgroundColor(cl_white);
+ // w1_1.setMaxWidth(40);
+
+ var w1_2 = new qx.ui.layout.CanvasLayout;
+ w1_2.setHeight(25);
+ w1_2.setWidth(25);
+ w1_2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w1_2.setBackgroundColor(cl_blue);
+ w1_2.setRight(10);
+
+ var w1_3 = new qx.ui.layout.CanvasLayout;
+ w1_3.setHeight(25);
+ w1_3.setWidth("100%");
+ w1_3.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w1_3.setBackgroundColor(cl_yellow);
+
+ var w1_4 = new qx.ui.layout.CanvasLayout;
+ w1_4.setHeight(25);
+ w1_4.setWidth(25);
+ w1_4.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w1_4.setBackgroundColor(cl_green);
+
+ var w1_5 = new qx.ui.layout.CanvasLayout;
+ w1_5.setHeight(40);
+ // w1_5.setWidth(25);
+ w1_5.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w1_5.setBackgroundColor(cl_orange);
+
+ var w1_6 = new qx.ui.layout.CanvasLayout;
+ w1_6.setHeight(25);
+ w1_6.setWidth(25);
+ w1_6.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w1_6.setBackgroundColor(cl_purple);
+ w1_6.setLeft(15);
+ w1_6.setTop(-25);
+
+ var w1_7 = new qx.ui.basic.Image("icon/32/apps/accessories-clock.png");
+
+ var w1_8 = new qx.ui.basic.Image("icon/32/actions/format-color.png");
+
+ var w1_9 = new qx.ui.layout.CanvasLayout;
+ w1_9.setHeight(25);
+ w1_9.setWidth(25);
+ w1_9.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w1_9.setBackgroundColor(cl_aqua);
+
+ var w1_10 = new qx.ui.layout.CanvasLayout;
+ w1_10.setHeight(25);
+ w1_10.setWidth(25);
+ w1_10.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w1_10.setBackgroundColor(cl_fuchsia);
+
+ var hbl1_click = 0;
+ hbl1.addEventListener("click", function(e)
+ {
+ if (e.getTarget()!=this) {
+ return;
+ };
+
+ switch(hbl1_click)
+ {
+ case 0:
+ this.setBottom(null);
+ this.setHeight("auto");
+ break;
+
+ case 1:
+ this.setWidth(30);
+ break;
+
+ case 2:
+ this.setWidth(80);
+ break;
+
+ case 3:
+ this.setWidth("auto");
+ break;
+
+ case 4:
+ this.setHeight(200);
+ break;
+
+ case 5:
+ this.setHeight(null);
+ this.setBottom(48);
+ hbl1_click = 0;
+ return;
+ };
+
+ hbl1_click++;
+ });
+
+ w1_1.addEventListener("click", function(e)
+ {
+ if (this.getHeight() == 25)
+ {
+ this.setHeight(65);
+ this.setWidth(65);
+ this.setBorder(new qx.renderer.border.Border(6, "double", "black"));
+ }
+ else
+ {
+ this.setHeight(25);
+ this.setWidth(25);
+ this.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ };
+ });
+
+ w1_2.addEventListener("click", function(e) {
+ this.getMarginBottom() == 0 ? this.setMarginBottom(10) : this.setMarginBottom(0);
+ });
+
+ w1_3.addEventListener("click", function(e) {
+ this.getMinHeight() == -Infinity ? this.setMinHeight(100) : this.setMinHeight(-Infinity);
+ });
+
+ w1_4.addEventListener("click", function(e) {
+ this.getHeight() == 25 ? this.setHeight(50) : this.setHeight(25);
+ });
+
+ w1_5.addEventListener("click", function(e) {
+ this.getHeight() == 40 ? this.setHeight(80) : this.setHeight(40);
+ });
+
+ w1_6.addEventListener("click", function(e) {
+ this.getTop() == -25 ? this.setTop(25) : this.setTop(-25);
+ });
+
+ w1_7.addEventListener("click", function(e) {
+ this.getSource() == "icon/32/apps/accessories-clock.png" ? this.setSource("icon/64/apps/accessories-clock.png") : this.setSource("icon/32/apps/accessories-clock.png");
+ });
+
+ w1_8.addEventListener("click", function(e) {
+ this.getSource() == "icon/32/actions/format-color.png" ? this.setSource("icon/16/actions/format-color.png") : this.setSource("icon/32/actions/format-color.png");
+ });
+
+ w1_9.addEventListener("click", function(e)
+ {
+ if (this.getLeft() == null)
+ {
+ this.setLeft(20);
+ this.setTop(-10);
+ }
+ else
+ {
+ this.setLeft(null);
+ this.setTop(null);
+ };
+ });
+
+ w1_10.addEventListener("click", function(e)
+ {
+ if (this.getHeight() == 25)
+ {
+ this.setHeight(10);
+ this.setWidth(10);
+ this.setTop(-5);
+ this.setRight(15);
+ }
+ else
+ {
+ this.setHeight(25);
+ this.setWidth(25);
+ this.setTop(null);
+ this.setRight(null);
+ };
+ });
+
+
+
+ hbl1.add(w1_1, w1_2, w1_3, w1_4, w1_5, w1_6, w1_7, w1_8, w1_9, w1_10);
+ d.add(hbl1);
+
+
+
+
+
+ /* ***********************************************
+
+ EXAMPLE TWO:
+ BOTTOM ALIGN
+
+ *********************************************** */
+
+ var hbl2 = new qx.ui.layout.VerticalBoxLayout;
+
+ hbl2.setLeft(110);
+ hbl2.setTop(48);
+ hbl2.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ hbl2.setWidth("auto");
+ hbl2.setBottom(48);
+
+ hbl2.setSpacing(4);
+ hbl2.setPadding(8);
+
+ hbl2.setVerticalChildrenAlign("bottom");
+ hbl2.setHorizontalChildrenAlign("center");
+
+
+ var w2_1 = new qx.ui.layout.CanvasLayout;
+ w2_1.setHeight(25);
+ w2_1.setWidth(25);
+ w2_1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w2_1.setBackgroundColor(cl_white);
+ // w2_1.setMaxWidth(40);
+
+ var w2_2 = new qx.ui.layout.CanvasLayout;
+ w2_2.setHeight(25);
+ w2_2.setWidth(25);
+ w2_2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w2_2.setBackgroundColor(cl_blue);
+ w2_2.setRight(10);
+
+ var w2_3 = new qx.ui.layout.CanvasLayout;
+ w2_3.setHeight(25);
+ w2_3.setWidth("100%");
+ w2_3.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w2_3.setBackgroundColor(cl_yellow);
+
+ var w2_4 = new qx.ui.layout.CanvasLayout;
+ w2_4.setHeight(25);
+ w2_4.setWidth(25);
+ w2_4.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w2_4.setBackgroundColor(cl_green);
+
+ var w2_5 = new qx.ui.layout.CanvasLayout;
+ w2_5.setHeight(40);
+ // w2_5.setWidth(25);
+ w2_5.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w2_5.setBackgroundColor(cl_orange);
+
+ var w2_6 = new qx.ui.layout.CanvasLayout;
+ w2_6.setHeight(25);
+ w2_6.setWidth(25);
+ w2_6.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w2_6.setBackgroundColor(cl_purple);
+ w2_6.setLeft(15);
+ w2_6.setTop(-25);
+
+ var w2_7 = new qx.ui.basic.Image("icon/32/apps/accessories-clock.png");
+
+ var w2_8 = new qx.ui.basic.Image("icon/32/actions/format-color.png");
+
+ var w2_9 = new qx.ui.layout.CanvasLayout;
+ w2_9.setHeight(25);
+ w2_9.setWidth(25);
+ w2_9.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w2_9.setBackgroundColor(cl_aqua);
+
+ var w2_10 = new qx.ui.layout.CanvasLayout;
+ w2_10.setHeight(25);
+ w2_10.setWidth(25);
+ w2_10.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w2_10.setBackgroundColor(cl_fuchsia);
+ w2_10.foo = true;
+
+
+ var hbl2_click = 0;
+ hbl2.addEventListener("click", function(e)
+ {
+ if (e.getTarget()!=this) {
+ return;
+ };
+
+ switch(hbl2_click)
+ {
+ case 0:
+ this.setBottom(null);
+ this.setHeight("auto");
+ break;
+
+ case 1:
+ this.setWidth(30);
+ break;
+
+ case 2:
+ this.setWidth(80);
+ break;
+
+ case 3:
+ this.setWidth("auto");
+ break;
+
+ case 4:
+ this.setHeight(200);
+ break;
+
+ case 5:
+ this.setHeight(null);
+ this.setBottom(48);
+ hbl2_click = 0;
+ return;
+ };
+
+ hbl2_click++;
+ });
+
+ w2_1.addEventListener("click", function(e)
+ {
+ if (this.getHeight() == 25)
+ {
+ this.setHeight(65);
+ this.setWidth(65);
+ this.setBorder(new qx.renderer.border.Border(6, "double", "black"));
+ }
+ else
+ {
+ this.setHeight(25);
+ this.setWidth(25);
+ this.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ };
+ });
+
+ w2_2.addEventListener("click", function(e) {
+ this.getMarginBottom() == 0 ? this.setMarginBottom(10) : this.setMarginBottom(0);
+ });
+
+ w2_3.addEventListener("click", function(e) {
+ this.getMinHeight() == -Infinity ? this.setMinHeight(100) : this.setMinHeight(-Infinity);
+ });
+
+ w2_4.addEventListener("click", function(e) {
+ this.getHeight() == 25 ? this.setHeight(50) : this.setHeight(25);
+ });
+
+ w2_5.addEventListener("click", function(e) {
+ this.getHeight() == 40 ? this.setHeight(80) : this.setHeight(40);
+ });
+
+ w2_6.addEventListener("click", function(e) {
+ this.getTop() == -25 ? this.setTop(25) : this.setTop(-25);
+ });
+
+ w2_7.addEventListener("click", function(e) {
+ this.getSource() == "icon/32/apps/accessories-clock.png" ? this.setSource("icon/64/apps/accessories-clock.png") : this.setSource("icon/32/apps/accessories-clock.png");
+ });
+
+ w2_8.addEventListener("click", function(e) {
+ this.getSource() == "icon/32/actions/format-color.png" ? this.setSource("icon/16/actions/format-color.png") : this.setSource("icon/32/actions/format-color.png");
+ });
+
+ w2_9.addEventListener("click", function(e)
+ {
+ if (this.getLeft() == null)
+ {
+ this.setLeft(20);
+ this.setTop(-10);
+ }
+ else
+ {
+ this.setLeft(null);
+ this.setTop(null);
+ };
+ });
+
+ w2_10.addEventListener("click", function(e)
+ {
+ if (this.getHeight() == 25)
+ {
+ this.setHeight(10);
+ this.setWidth(10);
+ this.setTop(-5);
+ this.setRight(15);
+ }
+ else
+ {
+ this.setHeight(25);
+ this.setWidth(25);
+ this.setTop(null);
+ this.setRight(null);
+ };
+ });
+
+
+
+ hbl2.add(w2_1, w2_2, w2_3, w2_4, w2_5, w2_6, w2_7, w2_8, w2_9, w2_10);
+ d.add(hbl2);
+
+
+ /* ***********************************************
+
+ EXAMPLE THREE:
+ CENTER ALIGN
+
+ *********************************************** */
+
+ var hbl3 = new qx.ui.layout.VerticalBoxLayout;
+
+ hbl3.setLeft(200);
+ hbl3.setTop(48);
+ hbl3.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ hbl3.setWidth("auto");
+ hbl3.setBottom(48);
+
+ hbl3.setSpacing(4);
+ hbl3.setPadding(8);
+
+ hbl3.setVerticalChildrenAlign("middle");
+
+
+
+ var w3_1 = new qx.ui.layout.CanvasLayout;
+ w3_1.setHeight(25);
+ w3_1.setWidth(25);
+ w3_1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w3_1.setBackgroundColor(cl_white);
+ // w3_1.setMaxWidth(40);
+
+ var w3_2 = new qx.ui.layout.CanvasLayout;
+ w3_2.setHeight(25);
+ w3_2.setWidth(25);
+ w3_2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w3_2.setBackgroundColor(cl_blue);
+ w3_2.setRight(10);
+
+ var w3_3 = new qx.ui.layout.CanvasLayout;
+ w3_3.setHeight(25);
+ w3_3.setWidth("100%");
+ w3_3.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w3_3.setBackgroundColor(cl_yellow);
+
+ var w3_4 = new qx.ui.layout.CanvasLayout;
+ w3_4.setHeight(25);
+ w3_4.setWidth(25);
+ w3_4.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w3_4.setBackgroundColor(cl_green);
+
+ var w3_5 = new qx.ui.layout.CanvasLayout;
+ w3_5.setHeight(40);
+ // w3_5.setWidth(25);
+ w3_5.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w3_5.setBackgroundColor(cl_orange);
+
+ var w3_6 = new qx.ui.layout.CanvasLayout;
+ w3_6.setHeight(25);
+ w3_6.setWidth(25);
+ w3_6.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w3_6.setBackgroundColor(cl_purple);
+ w3_6.setLeft(15);
+ w3_6.setTop(-25);
+
+ var w3_7 = new qx.ui.basic.Image("icon/32/apps/accessories-clock.png");
+
+ var w3_8 = new qx.ui.basic.Image("icon/32/actions/format-color.png");
+
+ var w3_9 = new qx.ui.layout.CanvasLayout;
+ w3_9.setHeight(25);
+ w3_9.setWidth(25);
+ w3_9.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w3_9.setBackgroundColor(cl_aqua);
+
+ var w3_10 = new qx.ui.layout.CanvasLayout;
+ w3_10.setHeight(25);
+ w3_10.setWidth(25);
+ w3_10.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w3_10.setBackgroundColor(cl_fuchsia);
+
+
+ var hbl3_click = 0;
+ hbl3.addEventListener("click", function(e)
+ {
+ if (e.getTarget()!=this) {
+ return;
+ };
+
+ switch(hbl3_click)
+ {
+ case 0:
+ this.setBottom(null);
+ this.setHeight("auto");
+ break;
+
+ case 1:
+ this.setWidth(30);
+ break;
+
+ case 2:
+ this.setWidth(80);
+ break;
+
+ case 3:
+ this.setWidth("auto");
+ break;
+
+ case 4:
+ this.setHeight(200);
+ break;
+
+ case 5:
+ this.setHeight(null);
+ this.setBottom(48);
+ hbl3_click = 0;
+ return;
+ };
+
+ hbl3_click++;
+ });
+
+ w3_1.addEventListener("click", function(e)
+ {
+ if (this.getHeight() == 25)
+ {
+ this.setHeight(65);
+ this.setWidth(65);
+ this.setBorder(new qx.renderer.border.Border(6, "double", "black"));
+ }
+ else
+ {
+ this.setHeight(25);
+ this.setWidth(25);
+ this.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ };
+ });
+
+ w3_2.addEventListener("click", function(e) {
+ this.getMarginBottom() == 0 ? this.setMarginBottom(10) : this.setMarginBottom(0);
+ });
+
+ w3_3.addEventListener("click", function(e) {
+ this.getMinHeight() == -Infinity ? this.setMinHeight(100) : this.setMinHeight(-Infinity);
+ });
+
+ w3_4.addEventListener("click", function(e) {
+ this.getHeight() == 25 ? this.setHeight(50) : this.setHeight(25);
+ });
+
+ w3_5.addEventListener("click", function(e) {
+ this.getHeight() == 40 ? this.setHeight(80) : this.setHeight(40);
+ });
+
+ w3_6.addEventListener("click", function(e) {
+ this.getTop() == -25 ? this.setTop(25) : this.setTop(-25);
+ });
+
+ w3_7.addEventListener("click", function(e) {
+ this.getSource() == "icon/32/apps/accessories-clock.png" ? this.setSource("icon/64/apps/accessories-clock.png") : this.setSource("icon/32/apps/accessories-clock.png");
+ });
+
+ w3_8.addEventListener("click", function(e) {
+ this.getSource() == "icon/32/actions/format-color.png" ? this.setSource("icon/16/actions/format-color.png") : this.setSource("icon/32/actions/format-color.png");
+ });
+
+ w3_9.addEventListener("click", function(e)
+ {
+ if (this.getLeft() == null)
+ {
+ this.setLeft(20);
+ this.setTop(-10);
+ }
+ else
+ {
+ this.setLeft(null);
+ this.setTop(null);
+ };
+ });
+
+ w3_10.addEventListener("click", function(e)
+ {
+ if (this.getHeight() == 25)
+ {
+ this.setHeight(10);
+ this.setWidth(10);
+ this.setTop(-5);
+ this.setRight(15);
+ }
+ else
+ {
+ this.setHeight(25);
+ this.setWidth(25);
+ this.setTop(null);
+ this.setRight(null);
+ };
+ });
+
+
+
+ hbl3.add(w3_1, w3_2, w3_3, w3_4, w3_5, w3_6, w3_7, w3_8, w3_9, w3_10);
+ d.add(hbl3);
+
+
+
+
+ /* ***********************************************
+
+ EXAMPLE FOUR:
+ TOP ALIGN, REVERTED CHILDREN ORDER
+
+ *********************************************** */
+
+ var hbl4 = new qx.ui.layout.VerticalBoxLayout;
+
+ hbl4.setLeft(290);
+ hbl4.setTop(48);
+ hbl4.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ hbl4.setHeight(null);
+ hbl4.setBottom(48);
+
+ hbl4.setSpacing(4);
+ hbl4.setPadding(8);
+ hbl4.setReverseChildrenOrder(true);
+ hbl4.setHorizontalChildrenAlign("right");
+
+ hbl4.setWidth(80);
+
+
+
+ var w4_1 = new qx.ui.layout.CanvasLayout;
+ w4_1.setHeight(25);
+ w4_1.setWidth(25);
+ w4_1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w4_1.setBackgroundColor(cl_white);
+ // w4_1.setMaxWidth(40);
+
+ var w4_2 = new qx.ui.layout.CanvasLayout;
+ w4_2.setHeight(25);
+ w4_2.setWidth(25);
+ w4_2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w4_2.setBackgroundColor(cl_blue);
+ w4_2.setRight(10);
+
+ var w4_3 = new qx.ui.layout.CanvasLayout;
+ w4_3.setHeight(25);
+ w4_3.setWidth("100%");
+ w4_3.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w4_3.setBackgroundColor(cl_yellow);
+
+ var w4_4 = new qx.ui.layout.CanvasLayout;
+ w4_4.setHeight(25);
+ w4_4.setWidth(25);
+ w4_4.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w4_4.setBackgroundColor(cl_green);
+
+ var w4_5 = new qx.ui.layout.CanvasLayout;
+ w4_5.setHeight(40);
+ // w4_5.setWidth(25);
+ w4_5.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w4_5.setBackgroundColor(cl_orange);
+
+ var w4_6 = new qx.ui.layout.CanvasLayout;
+ w4_6.setHeight(25);
+ w4_6.setWidth(25);
+ w4_6.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w4_6.setBackgroundColor(cl_purple);
+ w4_6.setLeft(15);
+ w4_6.setTop(-25);
+
+ var w4_7 = new qx.ui.basic.Image("icon/32/apps/accessories-clock.png");
+
+ var w4_8 = new qx.ui.basic.Image("icon/32/actions/format-color.png");
+
+ var w4_9 = new qx.ui.layout.CanvasLayout;
+ w4_9.setHeight(25);
+ w4_9.setWidth(25);
+ w4_9.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w4_9.setBackgroundColor(cl_aqua);
+
+ var w4_10 = new qx.ui.layout.CanvasLayout;
+ w4_10.setHeight(25);
+ w4_10.setWidth(25);
+ w4_10.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w4_10.setBackgroundColor(cl_fuchsia);
+
+
+ var hbl4_click = 0;
+ hbl4.addEventListener("click", function(e)
+ {
+ if (e.getTarget()!=this) {
+ return;
+ };
+
+ switch(hbl4_click)
+ {
+ case 0:
+ this.setBottom(null);
+ this.setHeight("auto");
+ break;
+
+ case 1:
+ this.setWidth(30);
+ break;
+
+ case 2:
+ this.setWidth("auto");
+ break;
+
+ case 3:
+ this.setWidth(80);
+ break;
+
+ case 4:
+ this.setHeight(200);
+ break;
+
+ case 5:
+ this.setHeight(null);
+ this.setBottom(48);
+ hbl4_click = 0;
+ return;
+ };
+
+ hbl4_click++;
+ });
+
+ w4_1.addEventListener("click", function(e)
+ {
+ if (this.getHeight() == 25)
+ {
+ this.setHeight(65);
+ this.setWidth(65);
+ this.setBorder(new qx.renderer.border.Border(6, "double", "black"));
+ }
+ else
+ {
+ this.setHeight(25);
+ this.setWidth(25);
+ this.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ };
+ });
+
+ w4_2.addEventListener("click", function(e) {
+ this.getMarginBottom() == 0 ? this.setMarginBottom(10) : this.setMarginBottom(0);
+ });
+
+ w4_3.addEventListener("click", function(e) {
+ this.getMinHeight() == -Infinity ? this.setMinHeight(100) : this.setMinHeight(-Infinity);
+ });
+
+ w4_4.addEventListener("click", function(e) {
+ this.getHeight() == 25 ? this.setHeight(50) : this.setHeight(25);
+ });
+
+ w4_5.addEventListener("click", function(e) {
+ this.getHeight() == 40 ? this.setHeight(80) : this.setHeight(40);
+ });
+
+ w4_6.addEventListener("click", function(e) {
+ this.getTop() == -25 ? this.setTop(25) : this.setTop(-25);
+ });
+
+ w4_7.addEventListener("click", function(e) {
+ this.getSource() == "icon/32/apps/accessories-clock.png" ? this.setSource("icon/64/apps/accessories-clock.png") : this.setSource("icon/32/apps/accessories-clock.png");
+ });
+
+ w4_8.addEventListener("click", function(e) {
+ this.getSource() == "icon/32/actions/format-color.png" ? this.setSource("icon/16/actions/format-color.png") : this.setSource("icon/32/actions/format-color.png");
+ });
+
+ w4_9.addEventListener("click", function(e)
+ {
+ if (this.getLeft() == null)
+ {
+ this.setLeft(20);
+ this.setTop(-10);
+ }
+ else
+ {
+ this.setLeft(null);
+ this.setTop(null);
+ };
+ });
+
+ w4_10.addEventListener("click", function(e)
+ {
+ if (this.getHeight() == 25)
+ {
+ this.setHeight(10);
+ this.setWidth(10);
+ this.setTop(-5);
+ this.setRight(15);
+ }
+ else
+ {
+ this.setHeight(25);
+ this.setWidth(25);
+ this.setTop(null);
+ this.setRight(null);
+ };
+ });
+
+
+
+ hbl4.add(w4_1, w4_2, w4_3, w4_4, w4_5, w4_6, w4_7, w4_8, w4_9, w4_10);
+ d.add(hbl4);
+
+
+
+
+ /* ***********************************************
+
+ EXAMPLE FIVE:
+ BOTTOM ALIGN, REVERTED CHILDREN ORDER
+
+ *********************************************** */
+
+ var hbl5 = new qx.ui.layout.VerticalBoxLayout;
+
+ hbl5.setLeft(380);
+ hbl5.setTop(48);
+ hbl5.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ hbl5.setHeight(null);
+ hbl5.setBottom(48);
+
+ hbl5.setSpacing(4);
+ hbl5.setPadding(8);
+
+ hbl5.setVerticalChildrenAlign("bottom");
+ hbl5.setReverseChildrenOrder(true);
+ hbl5.setHorizontalChildrenAlign("center");
+
+ hbl5.setWidth(80);
+
+
+ var w5_1 = new qx.ui.layout.CanvasLayout;
+ w5_1.setHeight(25);
+ w5_1.setWidth(25);
+ w5_1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w5_1.setBackgroundColor(cl_white);
+ // w5_1.setMaxWidth(40);
+
+ var w5_2 = new qx.ui.layout.CanvasLayout;
+ w5_2.setHeight(25);
+ w5_2.setWidth(25);
+ w5_2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w5_2.setBackgroundColor(cl_blue);
+ w5_2.setRight(10);
+
+ var w5_3 = new qx.ui.layout.CanvasLayout;
+ w5_3.setHeight(25);
+ w5_3.setWidth("100%");
+ w5_3.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w5_3.setBackgroundColor(cl_yellow);
+
+ var w5_4 = new qx.ui.layout.CanvasLayout;
+ w5_4.setHeight(25);
+ w5_4.setWidth(25);
+ w5_4.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w5_4.setBackgroundColor(cl_green);
+
+ var w5_5 = new qx.ui.layout.CanvasLayout;
+ w5_5.setHeight(40);
+ // w5_5.setWidth(25);
+ w5_5.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w5_5.setBackgroundColor(cl_orange);
+
+ var w5_6 = new qx.ui.layout.CanvasLayout;
+ w5_6.setHeight(25);
+ w5_6.setWidth(25);
+ w5_6.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w5_6.setBackgroundColor(cl_purple);
+ w5_6.setLeft(15);
+ w5_6.setTop(-25);
+
+ var w5_7 = new qx.ui.basic.Image("icon/32/apps/accessories-clock.png");
+
+ var w5_8 = new qx.ui.basic.Image("icon/32/actions/format-color.png");
+
+ var w5_9 = new qx.ui.layout.CanvasLayout;
+ w5_9.setHeight(25);
+ w5_9.setWidth(25);
+ w5_9.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w5_9.setBackgroundColor(cl_aqua);
+
+ var w5_10 = new qx.ui.layout.CanvasLayout;
+ w5_10.setHeight(25);
+ w5_10.setWidth(25);
+ w5_10.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w5_10.setBackgroundColor(cl_fuchsia);
+
+
+ var hbl5_click = 0;
+ hbl5.addEventListener("click", function(e)
+ {
+ if (e.getTarget()!=this) {
+ return;
+ };
+
+ switch(hbl5_click)
+ {
+ case 0:
+ this.setBottom(null);
+ this.setHeight("auto");
+ break;
+
+ case 1:
+ this.setWidth(30);
+ break;
+
+ case 2:
+ this.setWidth("auto");
+ break;
+
+ case 3:
+ this.setWidth(80);
+ break;
+
+ case 4:
+ this.setHeight(200);
+ break;
+
+ case 5:
+ this.setHeight(null);
+ this.setBottom(48);
+ hbl5_click = 0;
+ return;
+ };
+
+ hbl5_click++;
+ });
+
+ w5_1.addEventListener("click", function(e)
+ {
+ if (this.getHeight() == 25)
+ {
+ this.setHeight(65);
+ this.setWidth(65);
+ this.setBorder(new qx.renderer.border.Border(6, "double", "black"));
+ }
+ else
+ {
+ this.setHeight(25);
+ this.setWidth(25);
+ this.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ };
+ });
+
+ w5_2.addEventListener("click", function(e) {
+ this.getMarginBottom() == 0 ? this.setMarginBottom(10) : this.setMarginBottom(0);
+ });
+
+ w5_3.addEventListener("click", function(e) {
+ this.getMinHeight() == -Infinity ? this.setMinHeight(100) : this.setMinHeight(-Infinity);
+ });
+
+ w5_4.addEventListener("click", function(e) {
+ this.getHeight() == 25 ? this.setHeight(50) : this.setHeight(25);
+ });
+
+ w5_5.addEventListener("click", function(e) {
+ this.getHeight() == 40 ? this.setHeight(80) : this.setHeight(40);
+ });
+
+ w5_6.addEventListener("click", function(e) {
+ this.getTop() == -25 ? this.setTop(25) : this.setTop(-25);
+ });
+
+ w5_7.addEventListener("click", function(e) {
+ this.getSource() == "icon/32/apps/accessories-clock.png" ? this.setSource("icon/64/apps/accessories-clock.png") : this.setSource("icon/32/apps/accessories-clock.png");
+ });
+
+ w5_8.addEventListener("click", function(e) {
+ this.getSource() == "icon/32/actions/format-color.png" ? this.setSource("icon/16/actions/format-color.png") : this.setSource("icon/32/actions/format-color.png");
+ });
+
+ w5_9.addEventListener("click", function(e)
+ {
+ if (this.getLeft() == null)
+ {
+ this.setLeft(20);
+ this.setTop(-10);
+ }
+ else
+ {
+ this.setLeft(null);
+ this.setTop(null);
+ };
+ });
+
+ w5_10.addEventListener("click", function(e)
+ {
+ if (this.getHeight() == 25)
+ {
+ this.setHeight(10);
+ this.setWidth(10);
+ this.setTop(-5);
+ this.setRight(15);
+ }
+ else
+ {
+ this.setHeight(25);
+ this.setWidth(25);
+ this.setTop(null);
+ this.setRight(null);
+ };
+ });
+
+
+
+ hbl5.add(w5_1, w5_2, w5_3, w5_4, w5_5, w5_6, w5_7, w5_8, w5_9, w5_10);
+ d.add(hbl5);
+
+
+
+
+
+
+
+
+ /* ***********************************************
+
+ EXAMPLE SIX:
+ CENTER ALIGN, REVERTED CHILDREN ORDER
+
+ *********************************************** */
+
+ var hbl6 = new qx.ui.layout.VerticalBoxLayout;
+
+ hbl6.setLeft(470);
+ hbl6.setTop(48);
+ hbl6.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ hbl6.setHeight(null);
+ hbl6.setBottom(48);
+
+ hbl6.setSpacing(4);
+ hbl6.setPadding(8);
+
+ hbl6.setVerticalChildrenAlign("middle");
+ hbl6.setReverseChildrenOrder(true);
+ hbl6.setWidth(80);
+
+
+ var w6_1 = new qx.ui.layout.CanvasLayout;
+ w6_1.setHeight(25);
+ w6_1.setWidth(25);
+ w6_1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w6_1.setBackgroundColor(cl_white);
+ // w6_1.setMaxWidth(40);
+
+ var w6_2 = new qx.ui.layout.CanvasLayout;
+ w6_2.setHeight(25);
+ w6_2.setWidth(25);
+ w6_2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w6_2.setBackgroundColor(cl_blue);
+ w6_2.setRight(10);
+
+ var w6_3 = new qx.ui.layout.CanvasLayout;
+ w6_3.setHeight(25);
+ w6_3.setWidth("100%");
+ w6_3.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w6_3.setBackgroundColor(cl_yellow);
+
+ var w6_4 = new qx.ui.layout.CanvasLayout;
+ w6_4.setHeight(25);
+ w6_4.setWidth(25);
+ w6_4.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w6_4.setBackgroundColor(cl_green);
+
+ var w6_5 = new qx.ui.layout.CanvasLayout;
+ w6_5.setHeight(40);
+ // w6_5.setWidth(25);
+ w6_5.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w6_5.setBackgroundColor(cl_orange);
+
+ var w6_6 = new qx.ui.layout.CanvasLayout;
+ w6_6.setHeight(25);
+ w6_6.setWidth(25);
+ w6_6.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w6_6.setBackgroundColor(cl_purple);
+ w6_6.setLeft(15);
+ w6_6.setTop(-25);
+
+ var w6_7 = new qx.ui.basic.Image("icon/32/apps/accessories-clock.png");
+
+ var w6_8 = new qx.ui.basic.Image("icon/32/actions/format-color.png");
+
+ var w6_9 = new qx.ui.layout.CanvasLayout;
+ w6_9.setHeight(25);
+ w6_9.setWidth(25);
+ w6_9.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w6_9.setBackgroundColor(cl_aqua);
+
+ var w6_10 = new qx.ui.layout.CanvasLayout;
+ w6_10.setHeight(25);
+ w6_10.setWidth(25);
+ w6_10.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w6_10.setBackgroundColor(cl_fuchsia);
+
+
+ var hbl6_click = 0;
+ hbl6.addEventListener("click", function(e)
+ {
+ if (e.getTarget()!=this) {
+ return;
+ };
+
+ switch(hbl6_click)
+ {
+ case 0:
+ this.setBottom(null);
+ this.setHeight("auto");
+ break;
+
+ case 1:
+ this.setWidth(30);
+ break;
+
+ case 2:
+ this.setWidth("auto");
+ break;
+
+ case 3:
+ this.setWidth(80);
+ break;
+
+ case 4:
+ this.setHeight(200);
+ break;
+
+ case 5:
+ this.setHeight(null);
+ this.setBottom(48);
+ hbl6_click = 0;
+ return;
+ };
+
+ hbl6_click++;
+ });
+
+ w6_1.addEventListener("click", function(e)
+ {
+ if (this.getHeight() == 25)
+ {
+ this.setHeight(65);
+ this.setWidth(65);
+ this.setBorder(new qx.renderer.border.Border(6, "double", "black"));
+ }
+ else
+ {
+ this.setHeight(25);
+ this.setWidth(25);
+ this.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ };
+ });
+
+ w6_2.addEventListener("click", function(e) {
+ this.getMarginBottom() == 0 ? this.setMarginBottom(10) : this.setMarginBottom(0);
+ });
+
+ w6_3.addEventListener("click", function(e) {
+ this.getMinHeight() == -Infinity ? this.setMinHeight(100) : this.setMinHeight(-Infinity);
+ });
+
+ w6_4.addEventListener("click", function(e) {
+ this.getHeight() == 25 ? this.setHeight(50) : this.setHeight(25);
+ });
+
+ w6_5.addEventListener("click", function(e) {
+ this.getHeight() == 40 ? this.setHeight(80) : this.setHeight(40);
+ });
+
+ w6_6.addEventListener("click", function(e) {
+ this.getTop() == -25 ? this.setTop(25) : this.setTop(-25);
+ });
+
+ w6_7.addEventListener("click", function(e) {
+ this.getSource() == "icon/32/apps/accessories-clock.png" ? this.setSource("icon/64/apps/accessories-clock.png") : this.setSource("icon/32/apps/accessories-clock.png");
+ });
+
+ w6_8.addEventListener("click", function(e) {
+ this.getSource() == "icon/32/actions/format-color.png" ? this.setSource("icon/16/actions/format-color.png") : this.setSource("icon/32/actions/format-color.png");
+ });
+
+ w6_9.addEventListener("click", function(e)
+ {
+ if (this.getLeft() == null)
+ {
+ this.setLeft(20);
+ this.setTop(-10);
+ }
+ else
+ {
+ this.setLeft(null);
+ this.setTop(null);
+ };
+ });
+
+ w6_10.addEventListener("click", function(e)
+ {
+ if (this.getHeight() == 25)
+ {
+ this.setHeight(10);
+ this.setWidth(10);
+ this.setTop(-5);
+ this.setRight(15);
+ }
+ else
+ {
+ this.setHeight(25);
+ this.setWidth(25);
+ this.setTop(null);
+ this.setRight(null);
+ };
+ });
+
+
+
+ hbl6.add(w6_1, w6_2, w6_3, w6_4, w6_5, w6_6, w6_7, w6_8, w6_9, w6_10);
+ d.add(hbl6);
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/VerticalBoxLayout_2.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/VerticalBoxLayout_2.html
new file mode 100644
index 0000000000..e0c55bc67d
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/VerticalBoxLayout_2.html
@@ -0,0 +1,1227 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ Tests for the new implementation of the qx.ui.layout.VerticalBoxLayout widget.
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var cl_white = new qx.renderer.color.Color("white");
+ var cl_blue = new qx.renderer.color.Color("blue");
+ var cl_yellow = new qx.renderer.color.Color("yellow");
+ var cl_green = new qx.renderer.color.Color("green");
+ var cl_orange = new qx.renderer.color.Color("orange");
+ var cl_purple = new qx.renderer.color.Color("purple");
+ var cl_aqua = new qx.renderer.color.Color("aqua");
+ var cl_fuchsia = new qx.renderer.color.Color("fuchsia");
+
+ /* ***********************************************
+
+ EXAMPLE ONE:
+ TOP ALIGN
+
+ *********************************************** */
+
+ var hbl1 = new qx.ui.layout.VerticalBoxLayout;
+
+ hbl1.setTop(48);
+ hbl1.setLeft(20);
+ hbl1.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ hbl1.setWidth("auto");
+ hbl1.setBottom(48);
+
+ hbl1.setSpacing(4);
+ hbl1.setPadding(8);
+
+ hbl1.setHorizontalChildrenAlign("right");
+
+
+ var w1_1 = new qx.ui.layout.CanvasLayout;
+ w1_1.setHeight(25);
+ w1_1.setWidth(25);
+ w1_1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w1_1.setBackgroundColor(cl_white);
+ // w1_1.setMaxWidth(40);
+
+ var w1_2 = new qx.ui.layout.CanvasLayout;
+ w1_2.setHeight(25);
+ w1_2.setWidth(25);
+ w1_2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w1_2.setBackgroundColor(cl_blue);
+ w1_2.setRight(10);
+
+ var w1_3 = new qx.ui.layout.CanvasLayout;
+ w1_3.setHeight(25);
+ w1_3.setWidth("100%");
+ w1_3.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w1_3.setBackgroundColor(cl_yellow);
+
+ var w1_4 = new qx.ui.layout.CanvasLayout;
+ w1_4.setHeight(25);
+ w1_4.setWidth(25);
+ w1_4.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w1_4.setBackgroundColor(cl_green);
+
+ var w1_5 = new qx.ui.layout.CanvasLayout;
+ w1_5.setHeight("15%");
+ // w1_5.setWidth(25);
+ w1_5.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w1_5.setBackgroundColor(cl_orange);
+
+ var w1_6 = new qx.ui.layout.CanvasLayout;
+ w1_6.setHeight(25);
+ w1_6.setWidth(25);
+ w1_6.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w1_6.setBackgroundColor(cl_purple);
+ w1_6.setLeft(15);
+ w1_6.setTop(-25);
+
+ var w1_7 = new qx.ui.basic.Image("icon/32/apps/accessories-clock.png");
+
+ var w1_8 = new qx.ui.basic.Image("icon/32/actions/format-color.png");
+
+ var w1_9 = new qx.ui.layout.CanvasLayout;
+ w1_9.setHeight(25);
+ w1_9.setWidth(25);
+ w1_9.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w1_9.setBackgroundColor(cl_aqua);
+
+ var w1_10 = new qx.ui.layout.CanvasLayout;
+ w1_10.setHeight(25);
+ w1_10.setWidth(25);
+ w1_10.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w1_10.setBackgroundColor(cl_fuchsia);
+
+ var hbl1_click = 0;
+ hbl1.addEventListener("click", function(e)
+ {
+ if (e.getTarget()!=this) {
+ return;
+ };
+
+ switch(hbl1_click)
+ {
+ case 0:
+ this.setWidth(30);
+ break;
+
+ case 1:
+ this.setWidth(80);
+ break;
+
+ case 2:
+ this.setWidth("auto");
+ break;
+
+ case 3:
+ this.setHeight(200);
+ break;
+
+ case 4:
+ this.setHeight(null);
+ this.setBottom(48);
+ hbl1_click = 0;
+ return;
+ };
+
+ hbl1_click++;
+ });
+
+ w1_1.addEventListener("click", function(e)
+ {
+ if (this.getHeight() == 25)
+ {
+ this.setHeight(65);
+ this.setWidth(65);
+ this.setBorder(new qx.renderer.border.Border(6, "double", "black"));
+ }
+ else
+ {
+ this.setHeight(25);
+ this.setWidth(25);
+ this.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ };
+ });
+
+ w1_2.addEventListener("click", function(e) {
+ this.getMarginBottom() == 0 ? this.setMarginBottom(10) : this.setMarginBottom(0);
+ });
+
+ w1_3.addEventListener("click", function(e) {
+ this.getMinHeight() == -Infinity ? this.setMinHeight(100) : this.setMinHeight(-Infinity);
+ });
+
+ w1_4.addEventListener("click", function(e) {
+ this.getHeight() == 25 ? this.setHeight(50) : this.setHeight(25);
+ });
+
+ w1_5.addEventListener("click", function(e) {
+ this.getHeight() == 40 ? this.setHeight(80) : this.setHeight(40);
+ });
+
+ w1_6.addEventListener("click", function(e) {
+ this.getTop() == -25 ? this.setTop(25) : this.setTop(-25);
+ });
+
+ w1_7.addEventListener("click", function(e) {
+ this.getSource() == "icon/32/apps/accessories-clock.png" ? this.setSource("icon/64/apps/accessories-clock.png") : this.setSource("icon/32/apps/accessories-clock.png");
+ });
+
+ w1_8.addEventListener("click", function(e) {
+ this.getSource() == "icon/32/actions/format-color.png" ? this.setSource("icon/16/actions/format-color.png") : this.setSource("icon/32/actions/format-color.png");
+ });
+
+ w1_9.addEventListener("click", function(e)
+ {
+ if (this.getLeft() == null)
+ {
+ this.setLeft(20);
+ this.setTop(-10);
+ }
+ else
+ {
+ this.setLeft(null);
+ this.setTop(null);
+ };
+ });
+
+ w1_10.addEventListener("click", function(e)
+ {
+ if (this.getHeight() == 25)
+ {
+ this.setHeight(10);
+ this.setWidth(10);
+ this.setTop(-5);
+ this.setRight(15);
+ }
+ else
+ {
+ this.setHeight(25);
+ this.setWidth(25);
+ this.setTop(null);
+ this.setRight(null);
+ };
+ });
+
+
+
+ hbl1.add(w1_1, w1_2, w1_3, w1_4, w1_5, w1_6, w1_7, w1_8, w1_9, w1_10);
+ d.add(hbl1);
+
+
+
+
+
+ /* ***********************************************
+
+ EXAMPLE TWO:
+ BOTTOM ALIGN
+
+ *********************************************** */
+
+ var hbl2 = new qx.ui.layout.VerticalBoxLayout;
+
+ hbl2.setLeft(110);
+ hbl2.setTop(48);
+ hbl2.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ hbl2.setWidth("auto");
+ hbl2.setBottom(48);
+
+ hbl2.setSpacing(4);
+ hbl2.setPadding(8);
+
+ hbl2.setVerticalChildrenAlign("bottom");
+ hbl2.setHorizontalChildrenAlign("center");
+
+
+ var w2_1 = new qx.ui.layout.CanvasLayout;
+ w2_1.setHeight(25);
+ w2_1.setWidth(25);
+ w2_1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w2_1.setBackgroundColor(cl_white);
+ // w2_1.setMaxWidth(40);
+
+ var w2_2 = new qx.ui.layout.CanvasLayout;
+ w2_2.setHeight(25);
+ w2_2.setWidth(25);
+ w2_2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w2_2.setBackgroundColor(cl_blue);
+ w2_2.setRight(10);
+
+ var w2_3 = new qx.ui.layout.CanvasLayout;
+ w2_3.setHeight(25);
+ w2_3.setWidth("100%");
+ w2_3.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w2_3.setBackgroundColor(cl_yellow);
+
+ var w2_4 = new qx.ui.layout.CanvasLayout;
+ w2_4.setHeight(25);
+ w2_4.setWidth(25);
+ w2_4.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w2_4.setBackgroundColor(cl_green);
+
+ var w2_5 = new qx.ui.layout.CanvasLayout;
+ w2_5.setHeight("15%");
+ // w2_5.setWidth(25);
+ w2_5.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w2_5.setBackgroundColor(cl_orange);
+
+ var w2_6 = new qx.ui.layout.CanvasLayout;
+ w2_6.setHeight(25);
+ w2_6.setWidth(25);
+ w2_6.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w2_6.setBackgroundColor(cl_purple);
+ w2_6.setLeft(15);
+ w2_6.setTop(-25);
+
+ var w2_7 = new qx.ui.basic.Image("icon/32/apps/accessories-clock.png");
+
+ var w2_8 = new qx.ui.basic.Image("icon/32/actions/format-color.png");
+
+ var w2_9 = new qx.ui.layout.CanvasLayout;
+ w2_9.setHeight(25);
+ w2_9.setWidth(25);
+ w2_9.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w2_9.setBackgroundColor(cl_aqua);
+
+ var w2_10 = new qx.ui.layout.CanvasLayout;
+ w2_10.setHeight(25);
+ w2_10.setWidth(25);
+ w2_10.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w2_10.setBackgroundColor(cl_fuchsia);
+ w2_10.foo = true;
+
+
+ var hbl2_click = 0;
+ hbl2.addEventListener("click", function(e)
+ {
+ if (e.getTarget()!=this) {
+ return;
+ };
+
+ switch(hbl2_click)
+ {
+ case 0:
+ this.setWidth(30);
+ break;
+
+ case 1:
+ this.setWidth(80);
+ break;
+
+ case 2:
+ this.setWidth("auto");
+ break;
+
+ case 3:
+ this.setHeight(200);
+ break;
+
+ case 4:
+ this.setHeight(null);
+ this.setBottom(48);
+ hbl2_click = 0;
+ return;
+ };
+
+ hbl2_click++;
+ });
+
+ w2_1.addEventListener("click", function(e)
+ {
+ if (this.getHeight() == 25)
+ {
+ this.setHeight(65);
+ this.setWidth(65);
+ this.setBorder(new qx.renderer.border.Border(6, "double", "black"));
+ }
+ else
+ {
+ this.setHeight(25);
+ this.setWidth(25);
+ this.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ };
+ });
+
+ w2_2.addEventListener("click", function(e) {
+ this.getMarginBottom() == 0 ? this.setMarginBottom(10) : this.setMarginBottom(0);
+ });
+
+ w2_3.addEventListener("click", function(e) {
+ this.getMinHeight() == -Infinity ? this.setMinHeight(100) : this.setMinHeight(-Infinity);
+ });
+
+ w2_4.addEventListener("click", function(e) {
+ this.getHeight() == 25 ? this.setHeight(50) : this.setHeight(25);
+ });
+
+ w2_5.addEventListener("click", function(e) {
+ this.getHeight() == 40 ? this.setHeight(80) : this.setHeight(40);
+ });
+
+ w2_6.addEventListener("click", function(e) {
+ this.getTop() == -25 ? this.setTop(25) : this.setTop(-25);
+ });
+
+ w2_7.addEventListener("click", function(e) {
+ this.getSource() == "icon/32/apps/accessories-clock.png" ? this.setSource("icon/64/apps/accessories-clock.png") : this.setSource("icon/32/apps/accessories-clock.png");
+ });
+
+ w2_8.addEventListener("click", function(e) {
+ this.getSource() == "icon/32/actions/format-color.png" ? this.setSource("icon/16/actions/format-color.png") : this.setSource("icon/32/actions/format-color.png");
+ });
+
+ w2_9.addEventListener("click", function(e)
+ {
+ if (this.getLeft() == null)
+ {
+ this.setLeft(20);
+ this.setTop(-10);
+ }
+ else
+ {
+ this.setLeft(null);
+ this.setTop(null);
+ };
+ });
+
+ w2_10.addEventListener("click", function(e)
+ {
+ if (this.getHeight() == 25)
+ {
+ this.setHeight(10);
+ this.setWidth(10);
+ this.setTop(-5);
+ this.setRight(15);
+ }
+ else
+ {
+ this.setHeight(25);
+ this.setWidth(25);
+ this.setTop(null);
+ this.setRight(null);
+ };
+ });
+
+
+
+ hbl2.add(w2_1, w2_2, w2_3, w2_4, w2_5, w2_6, w2_7, w2_8, w2_9, w2_10);
+ d.add(hbl2);
+
+
+ /* ***********************************************
+
+ EXAMPLE THREE:
+ CENTER ALIGN
+
+ *********************************************** */
+
+ var hbl3 = new qx.ui.layout.VerticalBoxLayout;
+
+ hbl3.setLeft(200);
+ hbl3.setTop(48);
+ hbl3.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ hbl3.setWidth("auto");
+ hbl3.setBottom(48);
+
+ hbl3.setSpacing(4);
+ hbl3.setPadding(8);
+
+ hbl3.setVerticalChildrenAlign("middle");
+
+
+
+ var w3_1 = new qx.ui.layout.CanvasLayout;
+ w3_1.setHeight(25);
+ w3_1.setWidth(25);
+ w3_1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w3_1.setBackgroundColor(cl_white);
+ // w3_1.setMaxWidth(40);
+
+ var w3_2 = new qx.ui.layout.CanvasLayout;
+ w3_2.setHeight(25);
+ w3_2.setWidth(25);
+ w3_2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w3_2.setBackgroundColor(cl_blue);
+ w3_2.setRight(10);
+
+ var w3_3 = new qx.ui.layout.CanvasLayout;
+ w3_3.setHeight(25);
+ w3_3.setWidth("100%");
+ w3_3.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w3_3.setBackgroundColor(cl_yellow);
+
+ var w3_4 = new qx.ui.layout.CanvasLayout;
+ w3_4.setHeight(25);
+ w3_4.setWidth(25);
+ w3_4.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w3_4.setBackgroundColor(cl_green);
+
+ var w3_5 = new qx.ui.layout.CanvasLayout;
+ w3_5.setHeight("15%");
+ // w3_5.setWidth(25);
+ w3_5.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w3_5.setBackgroundColor(cl_orange);
+
+ var w3_6 = new qx.ui.layout.CanvasLayout;
+ w3_6.setHeight(25);
+ w3_6.setWidth(25);
+ w3_6.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w3_6.setBackgroundColor(cl_purple);
+ w3_6.setLeft(15);
+ w3_6.setTop(-25);
+
+ var w3_7 = new qx.ui.basic.Image("icon/32/apps/accessories-clock.png");
+
+ var w3_8 = new qx.ui.basic.Image("icon/32/actions/format-color.png");
+
+ var w3_9 = new qx.ui.layout.CanvasLayout;
+ w3_9.setHeight(25);
+ w3_9.setWidth(25);
+ w3_9.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w3_9.setBackgroundColor(cl_aqua);
+
+ var w3_10 = new qx.ui.layout.CanvasLayout;
+ w3_10.setHeight(25);
+ w3_10.setWidth(25);
+ w3_10.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w3_10.setBackgroundColor(cl_fuchsia);
+
+
+ var hbl3_click = 0;
+ hbl3.addEventListener("click", function(e)
+ {
+ if (e.getTarget()!=this) {
+ return;
+ };
+
+ switch(hbl3_click)
+ {
+ case 0:
+ this.setWidth(30);
+ break;
+
+ case 1:
+ this.setWidth(80);
+ break;
+
+ case 2:
+ this.setWidth("auto");
+ break;
+
+ case 3:
+ this.setHeight(200);
+ break;
+
+ case 4:
+ this.setHeight(null);
+ this.setBottom(48);
+ hbl3_click = 0;
+ return;
+ };
+
+ hbl3_click++;
+ });
+
+ w3_1.addEventListener("click", function(e)
+ {
+ if (this.getHeight() == 25)
+ {
+ this.setHeight(65);
+ this.setWidth(65);
+ this.setBorder(new qx.renderer.border.Border(6, "double", "black"));
+ }
+ else
+ {
+ this.setHeight(25);
+ this.setWidth(25);
+ this.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ };
+ });
+
+ w3_2.addEventListener("click", function(e) {
+ this.getMarginBottom() == 0 ? this.setMarginBottom(10) : this.setMarginBottom(0);
+ });
+
+ w3_3.addEventListener("click", function(e) {
+ this.getMinHeight() == -Infinity ? this.setMinHeight(100) : this.setMinHeight(-Infinity);
+ });
+
+ w3_4.addEventListener("click", function(e) {
+ this.getHeight() == 25 ? this.setHeight(50) : this.setHeight(25);
+ });
+
+ w3_5.addEventListener("click", function(e) {
+ this.getHeight() == 40 ? this.setHeight(80) : this.setHeight(40);
+ });
+
+ w3_6.addEventListener("click", function(e) {
+ this.getTop() == -25 ? this.setTop(25) : this.setTop(-25);
+ });
+
+ w3_7.addEventListener("click", function(e) {
+ this.getSource() == "icon/32/apps/accessories-clock.png" ? this.setSource("icon/64/apps/accessories-clock.png") : this.setSource("icon/32/apps/accessories-clock.png");
+ });
+
+ w3_8.addEventListener("click", function(e) {
+ this.getSource() == "icon/32/actions/format-color.png" ? this.setSource("icon/16/actions/format-color.png") : this.setSource("icon/32/actions/format-color.png");
+ });
+
+ w3_9.addEventListener("click", function(e)
+ {
+ if (this.getLeft() == null)
+ {
+ this.setLeft(20);
+ this.setTop(-10);
+ }
+ else
+ {
+ this.setLeft(null);
+ this.setTop(null);
+ };
+ });
+
+ w3_10.addEventListener("click", function(e)
+ {
+ if (this.getHeight() == 25)
+ {
+ this.setHeight(10);
+ this.setWidth(10);
+ this.setTop(-5);
+ this.setRight(15);
+ }
+ else
+ {
+ this.setHeight(25);
+ this.setWidth(25);
+ this.setTop(null);
+ this.setRight(null);
+ };
+ });
+
+
+
+ hbl3.add(w3_1, w3_2, w3_3, w3_4, w3_5, w3_6, w3_7, w3_8, w3_9, w3_10);
+ d.add(hbl3);
+
+
+
+
+ /* ***********************************************
+
+ EXAMPLE FOUR:
+ TOP ALIGN, REVERTED CHILDREN ORDER
+
+ *********************************************** */
+
+ var hbl4 = new qx.ui.layout.VerticalBoxLayout;
+
+ hbl4.setLeft(290);
+ hbl4.setTop(48);
+ hbl4.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ hbl4.setHeight(null);
+ hbl4.setBottom(48);
+
+ hbl4.setSpacing(4);
+ hbl4.setPadding(8);
+ hbl4.setReverseChildrenOrder(true);
+ hbl4.setHorizontalChildrenAlign("right");
+
+ hbl4.setWidth(80);
+
+
+
+ var w4_1 = new qx.ui.layout.CanvasLayout;
+ w4_1.setHeight(25);
+ w4_1.setWidth(25);
+ w4_1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w4_1.setBackgroundColor(cl_white);
+ // w4_1.setMaxWidth(40);
+
+ var w4_2 = new qx.ui.layout.CanvasLayout;
+ w4_2.setHeight(25);
+ w4_2.setWidth(25);
+ w4_2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w4_2.setBackgroundColor(cl_blue);
+ w4_2.setRight(10);
+
+ var w4_3 = new qx.ui.layout.CanvasLayout;
+ w4_3.setHeight(25);
+ w4_3.setWidth("100%");
+ w4_3.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w4_3.setBackgroundColor(cl_yellow);
+
+ var w4_4 = new qx.ui.layout.CanvasLayout;
+ w4_4.setHeight(25);
+ w4_4.setWidth(25);
+ w4_4.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w4_4.setBackgroundColor(cl_green);
+
+ var w4_5 = new qx.ui.layout.CanvasLayout;
+ w4_5.setHeight("15%");
+ // w4_5.setWidth(25);
+ w4_5.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w4_5.setBackgroundColor(cl_orange);
+
+ var w4_6 = new qx.ui.layout.CanvasLayout;
+ w4_6.setHeight(25);
+ w4_6.setWidth(25);
+ w4_6.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w4_6.setBackgroundColor(cl_purple);
+ w4_6.setLeft(15);
+ w4_6.setTop(-25);
+
+ var w4_7 = new qx.ui.basic.Image("icon/32/apps/accessories-clock.png");
+
+ var w4_8 = new qx.ui.basic.Image("icon/32/actions/format-color.png");
+
+ var w4_9 = new qx.ui.layout.CanvasLayout;
+ w4_9.setHeight(25);
+ w4_9.setWidth(25);
+ w4_9.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w4_9.setBackgroundColor(cl_aqua);
+
+ var w4_10 = new qx.ui.layout.CanvasLayout;
+ w4_10.setHeight(25);
+ w4_10.setWidth(25);
+ w4_10.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w4_10.setBackgroundColor(cl_fuchsia);
+
+
+ var hbl4_click = 0;
+ hbl4.addEventListener("click", function(e)
+ {
+ if (e.getTarget()!=this) {
+ return;
+ };
+
+ switch(hbl4_click)
+ {
+ case 0:
+ this.setWidth(30);
+ break;
+
+ case 1:
+ this.setWidth("auto");
+ break;
+
+ case 2:
+ this.setWidth(80);
+ break;
+
+ case 3:
+ this.setHeight(200);
+ break;
+
+ case 4:
+ this.setHeight(null);
+ this.setBottom(48);
+ hbl4_click = 0;
+ return;
+ };
+
+ hbl4_click++;
+ });
+
+ w4_1.addEventListener("click", function(e)
+ {
+ if (this.getHeight() == 25)
+ {
+ this.setHeight(65);
+ this.setWidth(65);
+ this.setBorder(new qx.renderer.border.Border(6, "double", "black"));
+ }
+ else
+ {
+ this.setHeight(25);
+ this.setWidth(25);
+ this.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ };
+ });
+
+ w4_2.addEventListener("click", function(e) {
+ this.getMarginBottom() == 0 ? this.setMarginBottom(10) : this.setMarginBottom(0);
+ });
+
+ w4_3.addEventListener("click", function(e) {
+ this.getMinHeight() == -Infinity ? this.setMinHeight(100) : this.setMinHeight(-Infinity);
+ });
+
+ w4_4.addEventListener("click", function(e) {
+ this.getHeight() == 25 ? this.setHeight(50) : this.setHeight(25);
+ });
+
+ w4_5.addEventListener("click", function(e) {
+ this.getHeight() == 40 ? this.setHeight(80) : this.setHeight(40);
+ });
+
+ w4_6.addEventListener("click", function(e) {
+ this.getTop() == -25 ? this.setTop(25) : this.setTop(-25);
+ });
+
+ w4_7.addEventListener("click", function(e) {
+ this.getSource() == "icon/32/apps/accessories-clock.png" ? this.setSource("icon/64/apps/accessories-clock.png") : this.setSource("icon/32/apps/accessories-clock.png");
+ });
+
+ w4_8.addEventListener("click", function(e) {
+ this.getSource() == "icon/32/actions/format-color.png" ? this.setSource("icon/16/actions/format-color.png") : this.setSource("icon/32/actions/format-color.png");
+ });
+
+ w4_9.addEventListener("click", function(e)
+ {
+ if (this.getLeft() == null)
+ {
+ this.setLeft(20);
+ this.setTop(-10);
+ }
+ else
+ {
+ this.setLeft(null);
+ this.setTop(null);
+ };
+ });
+
+ w4_10.addEventListener("click", function(e)
+ {
+ if (this.getHeight() == 25)
+ {
+ this.setHeight(10);
+ this.setWidth(10);
+ this.setTop(-5);
+ this.setRight(15);
+ }
+ else
+ {
+ this.setHeight(25);
+ this.setWidth(25);
+ this.setTop(null);
+ this.setRight(null);
+ };
+ });
+
+
+
+ hbl4.add(w4_1, w4_2, w4_3, w4_4, w4_5, w4_6, w4_7, w4_8, w4_9, w4_10);
+ d.add(hbl4);
+
+
+
+
+ /* ***********************************************
+
+ EXAMPLE FIVE:
+ BOTTOM ALIGN, REVERTED CHILDREN ORDER
+
+ *********************************************** */
+
+ var hbl5 = new qx.ui.layout.VerticalBoxLayout;
+
+ hbl5.setLeft(380);
+ hbl5.setTop(48);
+ hbl5.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ hbl5.setHeight(null);
+ hbl5.setBottom(48);
+
+ hbl5.setSpacing(4);
+ hbl5.setPadding(8);
+
+ hbl5.setVerticalChildrenAlign("bottom");
+ hbl5.setReverseChildrenOrder(true);
+ hbl5.setHorizontalChildrenAlign("center");
+
+ hbl5.setWidth(80);
+
+
+ var w5_1 = new qx.ui.layout.CanvasLayout;
+ w5_1.setHeight(25);
+ w5_1.setWidth(25);
+ w5_1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w5_1.setBackgroundColor(cl_white);
+ // w5_1.setMaxWidth(40);
+
+ var w5_2 = new qx.ui.layout.CanvasLayout;
+ w5_2.setHeight(25);
+ w5_2.setWidth(25);
+ w5_2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w5_2.setBackgroundColor(cl_blue);
+ w5_2.setRight(10);
+
+ var w5_3 = new qx.ui.layout.CanvasLayout;
+ w5_3.setHeight(25);
+ w5_3.setWidth("100%");
+ w5_3.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w5_3.setBackgroundColor(cl_yellow);
+
+ var w5_4 = new qx.ui.layout.CanvasLayout;
+ w5_4.setHeight(25);
+ w5_4.setWidth(25);
+ w5_4.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w5_4.setBackgroundColor(cl_green);
+
+ var w5_5 = new qx.ui.layout.CanvasLayout;
+ w5_5.setHeight("15%");
+ // w5_5.setWidth(25);
+ w5_5.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w5_5.setBackgroundColor(cl_orange);
+
+ var w5_6 = new qx.ui.layout.CanvasLayout;
+ w5_6.setHeight(25);
+ w5_6.setWidth(25);
+ w5_6.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w5_6.setBackgroundColor(cl_purple);
+ w5_6.setLeft(15);
+ w5_6.setTop(-25);
+
+ var w5_7 = new qx.ui.basic.Image("icon/32/apps/accessories-clock.png");
+
+ var w5_8 = new qx.ui.basic.Image("icon/32/actions/format-color.png");
+
+ var w5_9 = new qx.ui.layout.CanvasLayout;
+ w5_9.setHeight(25);
+ w5_9.setWidth(25);
+ w5_9.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w5_9.setBackgroundColor(cl_aqua);
+
+ var w5_10 = new qx.ui.layout.CanvasLayout;
+ w5_10.setHeight(25);
+ w5_10.setWidth(25);
+ w5_10.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w5_10.setBackgroundColor(cl_fuchsia);
+
+
+ var hbl5_click = 0;
+ hbl5.addEventListener("click", function(e)
+ {
+ if (e.getTarget()!=this) {
+ return;
+ };
+
+ switch(hbl5_click)
+ {
+ case 0:
+ this.setWidth(30);
+ break;
+
+ case 1:
+ this.setWidth("auto");
+ break;
+
+ case 2:
+ this.setWidth(80);
+ break;
+
+ case 3:
+ this.setHeight(200);
+ break;
+
+ case 4:
+ this.setHeight(null);
+ this.setBottom(48);
+ hbl5_click = 0;
+ return;
+ };
+
+ hbl5_click++;
+ });
+
+ w5_1.addEventListener("click", function(e)
+ {
+ if (this.getHeight() == 25)
+ {
+ this.setHeight(65);
+ this.setWidth(65);
+ this.setBorder(new qx.renderer.border.Border(6, "double", "black"));
+ }
+ else
+ {
+ this.setHeight(25);
+ this.setWidth(25);
+ this.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ };
+ });
+
+ w5_2.addEventListener("click", function(e) {
+ this.getMarginBottom() == 0 ? this.setMarginBottom(10) : this.setMarginBottom(0);
+ });
+
+ w5_3.addEventListener("click", function(e) {
+ this.getMinHeight() == -Infinity ? this.setMinHeight(100) : this.setMinHeight(-Infinity);
+ });
+
+ w5_4.addEventListener("click", function(e) {
+ this.getHeight() == 25 ? this.setHeight(50) : this.setHeight(25);
+ });
+
+ w5_5.addEventListener("click", function(e) {
+ this.getHeight() == 40 ? this.setHeight(80) : this.setHeight(40);
+ });
+
+ w5_6.addEventListener("click", function(e) {
+ this.getTop() == -25 ? this.setTop(25) : this.setTop(-25);
+ });
+
+ w5_7.addEventListener("click", function(e) {
+ this.getSource() == "icon/32/apps/accessories-clock.png" ? this.setSource("icon/64/apps/accessories-clock.png") : this.setSource("icon/32/apps/accessories-clock.png");
+ });
+
+ w5_8.addEventListener("click", function(e) {
+ this.getSource() == "icon/32/actions/format-color.png" ? this.setSource("icon/16/actions/format-color.png") : this.setSource("icon/32/actions/format-color.png");
+ });
+
+ w5_9.addEventListener("click", function(e)
+ {
+ if (this.getLeft() == null)
+ {
+ this.setLeft(20);
+ this.setTop(-10);
+ }
+ else
+ {
+ this.setLeft(null);
+ this.setTop(null);
+ };
+ });
+
+ w5_10.addEventListener("click", function(e)
+ {
+ if (this.getHeight() == 25)
+ {
+ this.setHeight(10);
+ this.setWidth(10);
+ this.setTop(-5);
+ this.setRight(15);
+ }
+ else
+ {
+ this.setHeight(25);
+ this.setWidth(25);
+ this.setTop(null);
+ this.setRight(null);
+ };
+ });
+
+
+
+ hbl5.add(w5_1, w5_2, w5_3, w5_4, w5_5, w5_6, w5_7, w5_8, w5_9, w5_10);
+ d.add(hbl5);
+
+
+
+
+
+
+
+
+ /* ***********************************************
+
+ EXAMPLE SIX:
+ CENTER ALIGN, REVERTED CHILDREN ORDER
+
+ *********************************************** */
+
+ var hbl6 = new qx.ui.layout.VerticalBoxLayout;
+
+ hbl6.setLeft(470);
+ hbl6.setTop(48);
+ hbl6.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ hbl6.setHeight(null);
+ hbl6.setBottom(48);
+
+ hbl6.setSpacing(4);
+ hbl6.setPadding(8);
+
+ hbl6.setVerticalChildrenAlign("middle");
+ hbl6.setReverseChildrenOrder(true);
+ hbl6.setWidth(80);
+
+
+ var w6_1 = new qx.ui.layout.CanvasLayout;
+ w6_1.setHeight(25);
+ w6_1.setWidth(25);
+ w6_1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w6_1.setBackgroundColor(cl_white);
+ // w6_1.setMaxWidth(40);
+
+ var w6_2 = new qx.ui.layout.CanvasLayout;
+ w6_2.setHeight(25);
+ w6_2.setWidth(25);
+ w6_2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w6_2.setBackgroundColor(cl_blue);
+ w6_2.setRight(10);
+
+ var w6_3 = new qx.ui.layout.CanvasLayout;
+ w6_3.setHeight(25);
+ w6_3.setWidth("100%");
+ w6_3.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w6_3.setBackgroundColor(cl_yellow);
+
+ var w6_4 = new qx.ui.layout.CanvasLayout;
+ w6_4.setHeight(25);
+ w6_4.setWidth(25);
+ w6_4.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w6_4.setBackgroundColor(cl_green);
+
+ var w6_5 = new qx.ui.layout.CanvasLayout;
+ w6_5.setHeight("15%");
+ // w6_5.setWidth(25);
+ w6_5.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w6_5.setBackgroundColor(cl_orange);
+
+ var w6_6 = new qx.ui.layout.CanvasLayout;
+ w6_6.setHeight(25);
+ w6_6.setWidth(25);
+ w6_6.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w6_6.setBackgroundColor(cl_purple);
+ w6_6.setLeft(15);
+ w6_6.setTop(-25);
+
+ var w6_7 = new qx.ui.basic.Image("icon/32/apps/accessories-clock.png");
+
+ var w6_8 = new qx.ui.basic.Image("icon/32/actions/format-color.png");
+
+ var w6_9 = new qx.ui.layout.CanvasLayout;
+ w6_9.setHeight(25);
+ w6_9.setWidth(25);
+ w6_9.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w6_9.setBackgroundColor(cl_aqua);
+
+ var w6_10 = new qx.ui.layout.CanvasLayout;
+ w6_10.setHeight(25);
+ w6_10.setWidth(25);
+ w6_10.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ w6_10.setBackgroundColor(cl_fuchsia);
+
+
+ var hbl6_click = 0;
+ hbl6.addEventListener("click", function(e)
+ {
+ if (e.getTarget()!=this) {
+ return;
+ };
+
+ switch(hbl6_click)
+ {
+ case 0:
+ this.setWidth(30);
+ break;
+
+ case 1:
+ this.setWidth("auto");
+ break;
+
+ case 2:
+ this.setWidth(80);
+ break;
+
+ case 3:
+ this.setHeight(200);
+ break;
+
+ case 4:
+ this.setHeight(null);
+ this.setBottom(48);
+ hbl6_click = 0;
+ return;
+ };
+
+ hbl6_click++;
+ });
+
+ w6_1.addEventListener("click", function(e)
+ {
+ if (this.getHeight() == 25)
+ {
+ this.setHeight(65);
+ this.setWidth(65);
+ this.setBorder(new qx.renderer.border.Border(6, "double", "black"));
+ }
+ else
+ {
+ this.setHeight(25);
+ this.setWidth(25);
+ this.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ };
+ });
+
+ w6_2.addEventListener("click", function(e) {
+ this.getMarginBottom() == 0 ? this.setMarginBottom(10) : this.setMarginBottom(0);
+ });
+
+ w6_3.addEventListener("click", function(e) {
+ this.getMinHeight() == -Infinity ? this.setMinHeight(100) : this.setMinHeight(-Infinity);
+ });
+
+ w6_4.addEventListener("click", function(e) {
+ this.getHeight() == 25 ? this.setHeight(50) : this.setHeight(25);
+ });
+
+ w6_5.addEventListener("click", function(e) {
+ this.getHeight() == 40 ? this.setHeight(80) : this.setHeight(40);
+ });
+
+ w6_6.addEventListener("click", function(e) {
+ this.getTop() == -25 ? this.setTop(25) : this.setTop(-25);
+ });
+
+ w6_7.addEventListener("click", function(e) {
+ this.getSource() == "icon/32/apps/accessories-clock.png" ? this.setSource("icon/64/apps/accessories-clock.png") : this.setSource("icon/32/apps/accessories-clock.png");
+ });
+
+ w6_8.addEventListener("click", function(e) {
+ this.getSource() == "icon/32/actions/format-color.png" ? this.setSource("icon/16/actions/format-color.png") : this.setSource("icon/32/actions/format-color.png");
+ });
+
+ w6_9.addEventListener("click", function(e)
+ {
+ if (this.getLeft() == null)
+ {
+ this.setLeft(20);
+ this.setTop(-10);
+ }
+ else
+ {
+ this.setLeft(null);
+ this.setTop(null);
+ };
+ });
+
+ w6_10.addEventListener("click", function(e)
+ {
+ if (this.getHeight() == 25)
+ {
+ this.setHeight(10);
+ this.setWidth(10);
+ this.setTop(-5);
+ this.setRight(15);
+ }
+ else
+ {
+ this.setHeight(25);
+ this.setWidth(25);
+ this.setTop(null);
+ this.setRight(null);
+ };
+ });
+
+
+
+ hbl6.add(w6_1, w6_2, w6_3, w6_4, w6_5, w6_6, w6_7, w6_8, w6_9, w6_10);
+ d.add(hbl6);
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/VerticalBoxLayout_3.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/VerticalBoxLayout_3.html
new file mode 100644
index 0000000000..7e9efb07b4
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/VerticalBoxLayout_3.html
@@ -0,0 +1,552 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ Tests for the new implementation of the qx.ui.layout.VerticalBoxLayout widget.<br/>
+ <br/>
+ 1. Simple testing, one static and one flex child<br/>
+ 2. Two flex children with the same priority<br/>
+ 3. The same as #2, but the second has the doubled priority compared to the first<br/>
+ <br/>
+
+ 4. The same as #3, but now the second child has a max-height of 50px<br/>
+ 5. The same as #4, but now with enabled "advancedFlexAllocation"<br/>
+ <br/>
+
+ 6. The same as #3, but now the second has a min height of 300px<br/>
+ 7. The same as #6, but now with enabled "advancedFlexAllocation"<br/>
+ <br/>
+
+ 8. Three children with the priorities: 1, 2 and 3. The second has a maxHeight of 50px<br/>
+ 9. The same as #8, but now with enabled "advancedFlexAllocation"<br/>
+ <br/>
+
+ 10. Three children with the priorities: 1, 2 and 3. Added a few mouse actions.<br/>
+ 11. Three children with the priorities: 1, a static height of 80px and 3.<br/>
+ 12. The same as #11, but configured as 'auto' height.
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+
+ /* ***********************************************
+
+ EXAMPLE 1:
+
+ *********************************************** */
+
+ var te1 = new qx.ui.basic.Label("#1");
+ te1.setLocation(20, 48);
+ d.add(te1);
+
+ var hbl1 = new qx.ui.layout.VerticalBoxLayout;
+ hbl1.setTop(78);
+ hbl1.setLeft(20);
+ hbl1.setBottom(48);
+ hbl1.setHeight(null);
+ hbl1.setWidth("auto");
+ hbl1.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ hbl1.setSpacing(4);
+ hbl1.setPadding(2);
+ d.add(hbl1);
+
+ var t1_1 = new qx.ui.basic.Terminator;
+ t1_1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t1_1.setHeight(20);
+ t1_1.setWidth(10);
+ t1_1.setBackgroundColor("green");
+ hbl1.add(t1_1);
+
+ t1_1.addEventListener("click", function() {
+ this.setHeight(this.getHeight() == 20 ? 100 : 20);
+ });
+
+ var t1_2 = new qx.ui.basic.Terminator;
+ t1_2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t1_2.setHeight("1*");
+ t1_2.setWidth(10);
+ t1_2.setBackgroundColor("blue");
+ hbl1.add(t1_2);
+
+
+
+
+ /* ***********************************************
+
+ EXAMPLE 2:
+
+ *********************************************** */
+
+ var te2 = new qx.ui.basic.Label("#2");
+ te2.setLocation(40, 48);
+ d.add(te2);
+
+ var hbl2 = new qx.ui.layout.VerticalBoxLayout;
+ hbl2.setTop(78);
+ hbl2.setLeft(40);
+ hbl2.setBottom(48);
+ hbl2.setHeight(null);
+ hbl2.setWidth("auto");
+ hbl2.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ hbl2.setSpacing(4);
+ hbl2.setPadding(2);
+ d.add(hbl2);
+
+ var t2_1 = new qx.ui.basic.Terminator;
+ t2_1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t2_1.setHeight("1*");
+ t2_1.setWidth(10);
+ t2_1.setBackgroundColor("green");
+ hbl2.add(t2_1);
+
+ var t2_2 = new qx.ui.basic.Terminator;
+ t2_2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t2_2.setHeight("1*");
+ t2_2.setWidth(10);
+ t2_2.setBackgroundColor("blue");
+ hbl2.add(t2_2);
+
+
+
+
+
+
+ /* ***********************************************
+
+ EXAMPLE 3:
+
+ *********************************************** */
+
+ var te3 = new qx.ui.basic.Label("#3");
+ te3.setLocation(60, 48);
+ d.add(te3);
+
+ var hbl3 = new qx.ui.layout.VerticalBoxLayout;
+ hbl3.setTop(78);
+ hbl3.setLeft(60);
+ hbl3.setBottom(48);
+ hbl3.setHeight(null);
+ hbl3.setWidth("auto");
+ hbl3.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ hbl3.setSpacing(4);
+ hbl3.setPadding(2);
+ d.add(hbl3);
+
+ var t3_1 = new qx.ui.basic.Terminator;
+ t3_1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t3_1.setHeight("1*");
+ t3_1.setWidth(10);
+ t3_1.setBackgroundColor("green");
+ hbl3.add(t3_1);
+
+ var t3_2 = new qx.ui.basic.Terminator;
+ t3_2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t3_2.setHeight("2*");
+ t3_2.setWidth(10);
+ t3_2.setBackgroundColor("blue");
+ hbl3.add(t3_2);
+
+
+
+
+ /* ***********************************************
+
+ EXAMPLE 4:
+
+ *********************************************** */
+
+ var te4 = new qx.ui.basic.Label("#4");
+ te4.setLocation(100, 48);
+ d.add(te4);
+
+ var hbl4 = new qx.ui.layout.VerticalBoxLayout;
+ hbl4.setTop(78);
+ hbl4.setLeft(100);
+ hbl4.setBottom(48);
+ hbl4.setHeight(null);
+ hbl4.setWidth("auto");
+ hbl4.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ hbl4.setSpacing(4);
+ hbl4.setPadding(2);
+ d.add(hbl4);
+
+ var t4_1 = new qx.ui.basic.Terminator;
+ t4_1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t4_1.setHeight("1*");
+ t4_1.setWidth(10);
+ t4_1.setBackgroundColor("green");
+ hbl4.add(t4_1);
+
+ var t4_2 = new qx.ui.basic.Terminator;
+ t4_2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t4_2.setHeight("2*");
+ t4_2.setWidth(10);
+ t4_2.setMaxHeight(50);
+ t4_2.setBackgroundColor("blue");
+ hbl4.add(t4_2);
+
+
+
+
+ /* ***********************************************
+
+ EXAMPLE 5:
+
+ *********************************************** */
+
+ var te5 = new qx.ui.basic.Label("#5");
+ te5.setLocation(120, 48);
+ d.add(te5);
+
+ var hbl5 = new qx.ui.layout.VerticalBoxLayout;
+ hbl5.setTop(78);
+ hbl5.setLeft(120);
+ hbl5.setBottom(48);
+ hbl5.setHeight(null);
+ hbl5.setWidth("auto");
+ hbl5.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ hbl5.setSpacing(4);
+ hbl5.setPadding(2);
+ hbl5.setUseAdvancedFlexAllocation(true);
+ d.add(hbl5);
+
+ var t5_1 = new qx.ui.basic.Terminator;
+ t5_1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t5_1.setHeight("1*");
+ t5_1.setWidth(10);
+ t5_1.setBackgroundColor("green");
+ hbl5.add(t5_1);
+
+ var t5_2 = new qx.ui.basic.Terminator;
+ t5_2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t5_2.setHeight("2*");
+ t5_2.setWidth(10);
+ t5_2.setMaxHeight(50);
+ t5_2.setBackgroundColor("blue");
+ hbl5.add(t5_2);
+
+
+
+
+ /* ***********************************************
+
+ EXAMPLE 6:
+
+ *********************************************** */
+
+ var te6 = new qx.ui.basic.Label("#6");
+ te6.setLocation(160, 48);
+ d.add(te6);
+
+ var hbl6 = new qx.ui.layout.VerticalBoxLayout;
+ hbl6.setTop(78);
+ hbl6.setLeft(160);
+ hbl6.setBottom(48);
+ hbl6.setHeight(null);
+ hbl6.setWidth("auto");
+ hbl6.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ hbl6.setSpacing(4);
+ hbl6.setPadding(2);
+ d.add(hbl6);
+
+ var t6_1 = new qx.ui.basic.Terminator;
+ t6_1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t6_1.setHeight("1*");
+ t6_1.setWidth(10);
+ t6_1.setBackgroundColor("green");
+ hbl6.add(t6_1);
+
+ var t6_2 = new qx.ui.basic.Terminator;
+ t6_2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t6_2.setHeight("2*");
+ t6_2.setWidth(10);
+ t6_2.setMinHeight(300);
+ t6_2.setBackgroundColor("blue");
+ hbl6.add(t6_2);
+
+
+
+
+ /* ***********************************************
+
+ EXAMPLE 7:
+
+ *********************************************** */
+
+ var te7 = new qx.ui.basic.Label("#7");
+ te7.setLocation(180, 48);
+ d.add(te7);
+
+ var hbl7 = new qx.ui.layout.VerticalBoxLayout;
+ hbl7.setTop(78);
+ hbl7.setLeft(180);
+ hbl7.setBottom(48);
+ hbl7.setHeight(null);
+ hbl7.setWidth("auto");
+ hbl7.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ hbl7.setSpacing(4);
+ hbl7.setPadding(2);
+ hbl7.setUseAdvancedFlexAllocation(true);
+ d.add(hbl7);
+
+ var t7_1 = new qx.ui.basic.Terminator;
+ t7_1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t7_1.setHeight("1*");
+ t7_1.setWidth(10);
+ t7_1.setBackgroundColor("green");
+ hbl7.add(t7_1);
+
+ var t7_2 = new qx.ui.basic.Terminator;
+ t7_2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t7_2.setHeight("2*");
+ t7_2.setWidth(10);
+ t7_2.setMinHeight(300);
+ t7_2.setBackgroundColor("blue");
+ hbl7.add(t7_2);
+
+
+
+
+ /* ***********************************************
+
+ EXAMPLE 8:
+
+ *********************************************** */
+
+ var te8 = new qx.ui.basic.Label("#8");
+ te8.setLocation(220, 48);
+ d.add(te8);
+
+ var hbl8 = new qx.ui.layout.VerticalBoxLayout;
+ hbl8.setTop(78);
+ hbl8.setLeft(220);
+ hbl8.setBottom(48);
+ hbl8.setHeight(null);
+ hbl8.setWidth("auto");
+ hbl8.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ hbl8.setSpacing(4);
+ hbl8.setPadding(2);
+ d.add(hbl8);
+
+ var t8_1 = new qx.ui.basic.Terminator;
+ t8_1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t8_1.setHeight("1*");
+ t8_1.setWidth(10);
+ t8_1.setBackgroundColor("green");
+ hbl8.add(t8_1);
+
+ var t8_2 = new qx.ui.basic.Terminator;
+ t8_2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t8_2.setHeight("2*");
+ t8_2.setWidth(10);
+ t8_2.setBackgroundColor("blue");
+ t8_2.setMaxHeight(50);
+ hbl8.add(t8_2);
+
+ var t8_3 = new qx.ui.basic.Terminator;
+ t8_3.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t8_3.setHeight("3*");
+ t8_3.setWidth(10);
+ t8_3.setBackgroundColor("red");
+ hbl8.add(t8_3);
+
+
+
+ /* ***********************************************
+
+ EXAMPLE 9:
+
+ *********************************************** */
+
+ var te9 = new qx.ui.basic.Label("#9");
+ te9.setLocation(240, 48);
+ d.add(te9);
+
+ var hbl9 = new qx.ui.layout.VerticalBoxLayout;
+ hbl9.setTop(78);
+ hbl9.setLeft(240);
+ hbl9.setBottom(48);
+ hbl9.setHeight(null);
+ hbl9.setWidth("auto");
+ hbl9.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ hbl9.setSpacing(4);
+ hbl9.setPadding(2);
+ hbl9.setUseAdvancedFlexAllocation(true);
+ d.add(hbl9);
+
+ var t9_1 = new qx.ui.basic.Terminator;
+ t9_1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t9_1.setHeight("1*");
+ t9_1.setWidth(10);
+ t9_1.setBackgroundColor("green");
+ hbl9.add(t9_1);
+
+ var t9_2 = new qx.ui.basic.Terminator;
+ t9_2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t9_2.setHeight("2*");
+ t9_2.setWidth(10);
+ t9_2.setBackgroundColor("blue");
+ t9_2.setMaxHeight(50);
+ hbl9.add(t9_2);
+
+ var t9_3 = new qx.ui.basic.Terminator;
+ t9_3.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t9_3.setHeight("3*");
+ t9_3.setWidth(10);
+ t9_3.setBackgroundColor("red");
+ hbl9.add(t9_3);
+
+
+
+
+ /* ***********************************************
+
+ EXAMPLE 10:
+
+ *********************************************** */
+
+ var te10 = new qx.ui.basic.Label("#10");
+ te10.setLocation(280, 48);
+ d.add(te10);
+
+ var hbl10 = new qx.ui.layout.VerticalBoxLayout;
+ hbl10.setTop(78);
+ hbl10.setLeft(280);
+ hbl10.setBottom(48);
+ hbl10.setHeight(null);
+ hbl10.setWidth("auto");
+ hbl10.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ hbl10.setSpacing(4);
+ hbl10.setPadding(2);
+ hbl10.setUseAdvancedFlexAllocation(true);
+ d.add(hbl10);
+
+ var t10_1 = new qx.ui.basic.Terminator;
+ t10_1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t10_1.setHeight("1*");
+ t10_1.setWidth(10);
+ t10_1.setBackgroundColor("green");
+ t10_1.addEventListener("click", function(e) { this.setHeight(this.getHeight() == "1*" ? "4*" : "1*"); });
+ hbl10.add(t10_1);
+
+ var t10_2 = new qx.ui.basic.Terminator;
+ t10_2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t10_2.setHeight("2*");
+ t10_2.setWidth(10);
+ t10_2.setBackgroundColor("blue");
+ t10_2.addEventListener("click", function(e) { this.setHeight(this.getHeight() == "2*" ? "1*" : "2*"); });
+ hbl10.add(t10_2);
+
+ var t10_3 = new qx.ui.basic.Terminator;
+ t10_3.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t10_3.setHeight("3*");
+ t10_3.setWidth(10);
+ t10_3.setBackgroundColor("red");
+ t10_3.addEventListener("click", function(e) { this.setHeight(this.getHeight() == "3*" ? "6*" : "3*"); });
+ hbl10.add(t10_3);
+
+
+
+
+ /* ***********************************************
+
+ EXAMPLE 11:
+
+ *********************************************** */
+
+ var te11 = new qx.ui.basic.Label("#11");
+ te11.setLocation(300, 48);
+ d.add(te11);
+
+ var hbl11 = new qx.ui.layout.VerticalBoxLayout;
+ hbl11.setTop(78);
+ hbl11.setLeft(300);
+ hbl11.setBottom(48);
+ hbl11.setHeight(null);
+ hbl11.setWidth("auto");
+ hbl11.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ hbl11.setSpacing(4);
+ hbl11.setPadding(2);
+ d.add(hbl11);
+
+ var t11_1 = new qx.ui.basic.Terminator;
+ t11_1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t11_1.setHeight("1*");
+ t11_1.setWidth(10);
+ t11_1.setBackgroundColor("green");
+ hbl11.add(t11_1);
+
+ var t11_2 = new qx.ui.basic.Terminator;
+ t11_2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t11_2.setHeight(80);
+ t11_2.setWidth(10);
+ t11_2.setBackgroundColor("blue");
+ hbl11.add(t11_2);
+
+ var t11_3 = new qx.ui.basic.Terminator;
+ t11_3.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t11_3.setHeight("3*");
+ t11_3.setWidth(10);
+ t11_3.setBackgroundColor("red");
+ hbl11.add(t11_3);
+
+
+
+
+ /* ***********************************************
+
+ EXAMPLE 12:
+
+ *********************************************** */
+
+ var te12 = new qx.ui.basic.Label("#13");
+ te12.setLocation(320, 48);
+ d.add(te12);
+
+ var hbl12 = new qx.ui.layout.VerticalBoxLayout;
+ hbl12.setTop(78);
+ hbl12.setLeft(320);
+ hbl12.setWidth("auto");
+ hbl12.setHeight("auto");
+ hbl12.setBorder(qx.renderer.border.BorderPresets.getInstance().outset);
+ hbl12.setSpacing(4);
+ hbl12.setPadding(2);
+ d.add(hbl12);
+
+ var t12_1 = new qx.ui.basic.Terminator;
+ t12_1.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t12_1.setHeight("1*");
+ t12_1.setWidth(10);
+ t12_1.setBackgroundColor("green");
+ hbl12.add(t12_1);
+
+ var t12_2 = new qx.ui.basic.Terminator;
+ t12_2.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t12_2.setHeight(80);
+ t12_2.setWidth(10);
+ t12_2.setBackgroundColor("blue");
+ hbl12.add(t12_2);
+
+ var t12_3 = new qx.ui.basic.Terminator;
+ t12_3.setBorder(qx.renderer.border.BorderPresets.getInstance().black);
+ t12_3.setHeight("3*");
+ t12_3.setWidth(10);
+ t12_3.setBackgroundColor("red");
+ hbl12.add(t12_3);
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Window_1.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Window_1.html
new file mode 100644
index 0000000000..211bcabc51
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Window_1.html
@@ -0,0 +1,179 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Who Framed Roger Rabbit?</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var w0 = new qx.ui.layout.CanvasLayout;
+ w0.set({left:20, top:48, right: 335, bottom: 48, backgroundColor:"Background", border:qx.renderer.border.BorderPresets.getInstance().inset});
+ w0.setOverflow("hidden");
+ d.add(w0);
+
+ var w1 = new qx.ui.window.Window("First Window");
+ w1.setSpace(20, 400, 20, 250);
+ w0.add(w1);
+
+ var w2 = new qx.ui.window.Window("Second Window", "icon/16/categories/applications-graphics.png");
+ w2.setSpace(200, 300, 80, 350);
+ w0.add(w2);
+
+ var w3 = new qx.ui.window.Window("Third Window", "icon/16/categories/applications-internet.png");
+ w3.setSpace(100, 300, 200, 200);
+ w3.setMaxWidth(450);
+ w3.setMaxHeight(300);
+ w0.add(w3);
+
+
+
+
+ var a1 = new qx.ui.basic.Atom("Welcome to your first own Window.<br/>Have fun!", "icon/32/apps/accessories-archiver.png");
+ a1.set({ top: 4, left: 4 });
+ w1.add(a1);
+
+
+
+ var tf1 = new qx.ui.pageview.tabview.TabView;
+ tf1.set({ left: 10, top: 52, right: 10, bottom: 10 });
+
+ var t1_1 = new qx.ui.pageview.tabview.Button("Explore");
+ var t1_2 = new qx.ui.pageview.tabview.Button("Internet");
+ var t1_3 = new qx.ui.pageview.tabview.Button("Future");
+
+ t1_1.setChecked(true);
+
+ tf1.getBar().add(t1_1, t1_2, t1_3);
+
+ var p1_1 = new qx.ui.pageview.tabview.Page(t1_1);
+ var p1_2 = new qx.ui.pageview.tabview.Page(t1_2);
+ var p1_3 = new qx.ui.pageview.tabview.Page(t1_3);
+
+ tf1.getPane().add(p1_1, p1_2, p1_3);
+
+ w1.add(tf1);
+
+
+
+ var at1 = new qx.ui.basic.Atom("Second Window", "icon/22/apps/accessories-clock.png");
+ at1.setLocation(4, 4);
+ w2.add(at1);
+
+
+ var at2 = new qx.ui.basic.Atom("Third Window", "icon/48/categories/applications-graphics.png");
+ at2.setLocation(4, 4);
+ w3.add(at2);
+
+
+
+
+
+
+ var fs1 = new qx.ui.groupbox.GroupBox("Settings");
+ fs1.setLocation(4, 30);
+ fs1.setRight(4);
+ fs1.setBottom(4);
+
+
+ var chk1 = new qx.ui.form.CheckBox("Show Icon");
+ chk1.setLocation(0, 0);
+ chk1.setChecked(true);
+ chk1.addEventListener("changeChecked", function(e) {
+ w2.setShowIcon(e.getData());
+ });
+
+ var chk2 = new qx.ui.form.CheckBox("Show Caption");
+ chk2.setLocation(0, 20);
+ chk2.setChecked(true);
+ chk2.addEventListener("changeChecked", function(e) {
+ w2.setShowCaption(e.getData());
+ });
+
+
+
+ var chk3 = new qx.ui.form.CheckBox("Resizeable");
+ chk3.setLocation(0, 50);
+ chk3.setChecked(true);
+ chk3.addEventListener("changeChecked", function(e) {
+ w2.setResizeable(e.getData());
+ });
+
+ var chk4 = new qx.ui.form.CheckBox("Moveable");
+ chk4.setLocation(0, 70);
+ chk4.setChecked(true);
+ chk4.addEventListener("changeChecked", function(e) {
+ w2.setMoveable(e.getData());
+ });
+
+
+
+ var chk5 = new qx.ui.form.CheckBox("Show Close");
+ chk5.setLocation(0, 100);
+ chk5.setChecked(true);
+ chk5.addEventListener("changeChecked", function(e) {
+ w2.setShowClose(e.getData());
+ });
+
+ var chk6 = new qx.ui.form.CheckBox("Show Maximize/Restore");
+ chk6.setLocation(0, 120);
+ chk6.setChecked(true);
+ chk6.addEventListener("changeChecked", function(e) {
+ w2.setShowMaximize(e.getData());
+ });
+
+ var chk7 = new qx.ui.form.CheckBox("Show Minimize");
+ chk7.setLocation(0, 140);
+ chk7.setChecked(true);
+ chk7.addEventListener("changeChecked", function(e) {
+ w2.setShowMinimize(e.getData());
+ });
+
+
+
+ var chk8 = new qx.ui.form.CheckBox("Allow Close");
+ chk8.setLocation(0, 170);
+ chk8.setChecked(true);
+ chk8.addEventListener("changeChecked", function(e) {
+ w2.setAllowClose(e.getData());
+ });
+
+ var chk9 = new qx.ui.form.CheckBox("Allow Maximize");
+ chk9.setLocation(0, 190);
+ chk9.setChecked(true);
+ chk9.addEventListener("changeChecked", function(e) {
+ w2.setAllowMaximize(e.getData());
+ });
+
+ var chk10 = new qx.ui.form.CheckBox("Allow Minimize");
+ chk10.setLocation(0, 210);
+ chk10.setChecked(true);
+ chk10.addEventListener("changeChecked", function(e) {
+ w2.setAllowMinimize(e.getData());
+ });
+
+
+ fs1.add(chk1, chk2, chk3, chk4, chk5, chk6, chk7, chk8, chk9, chk10);
+ w2.add(fs1);
+
+
+ w1.open();
+ w2.open();
+ w3.open();
+ });
+ </script>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Window_2.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Window_2.html
new file mode 100644
index 0000000000..60b220ab96
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Window_2.html
@@ -0,0 +1,54 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Testing auto dimension possibility of qx.ui.window.Window.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+ var w1 = new qx.ui.window.Window("First Window");
+ w1.getPane().setPadding(10);
+ w1.setLocation(100, 100);
+ w1.setWidth("auto");
+ w1.setHeight("auto");
+
+ d.add(w1);
+
+ var a1 = new qx.ui.basic.Atom("Welcome to your first own Window.<br/>Have fun!", "icon/32/actions/favorite-add.png");
+ a1.set({ top: 0, left: 100 });
+ w1.add(a1);
+
+ var chk1 = new qx.ui.form.CheckBox("Show Statusbar");
+ chk1.set({ top: 45, left: 0 });
+
+ chk1.addEventListener("changeChecked", function(e) {
+ w1.setShowStatusbar(e.getData());
+ });
+
+ var btn1 = new qx.ui.form.Button("Yes", "icon/16/actions/dialog-ok.png");
+ btn1.set({ top: 70, left : 0 });
+
+ var btn2 = new qx.ui.form.Button("No", "icon/16/actions/dialog-cancel.png");
+ btn2.set({ top: 70, right : 0 });
+
+ w1.add(chk1, btn1, btn2);
+
+ w1.open();
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Window_3.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Window_3.html
new file mode 100644
index 0000000000..6358dce19a
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Window_3.html
@@ -0,0 +1,99 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Modal dialog with qx.ui.form.TextField and qx.ui.form.TextArea</p>
+ </div>
+
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+
+ var d = qx.ui.core.ClientDocument.getInstance();
+ var txtfld;
+
+ var dialogEditFrage = new qx.ui.window.Window("Edit", "icon/16/apps/accessories-text-editor.png");
+
+ with(dialogEditFrage) {
+ setSpace(300, 400, 100, 300);
+ setModal(true);
+
+ setShowClose(false);
+
+ var qx_widget = new qx.ui.basic.Atom('Question');
+ with(qx_widget)
+ {
+ setHorizontalChildrenAlign('right');
+ set({top:10,left:10,width:'20%'});
+ };
+ add(qx_widget);
+
+ qx_widget = txtfld = new qx.ui.form.TextArea();
+ with (qx_widget) {
+ set({top:10,right:10,width:'70%'})
+ };
+ add(qx_widget);
+
+ qx_widget = new qx.ui.basic.Atom('Type');
+ with(qx_widget)
+ {
+ setHorizontalChildrenAlign('right');
+ set({top:70,left:10,width:'20%'});
+ };
+ add(qx_widget);
+
+ qx_widget = new qx.ui.form.TextField();
+ with (qx_widget) {
+ set({top:70,right:10,width:'70%'})
+ };
+ add(qx_widget);
+
+
+ var btnOK = new qx.ui.form.Button("OK", "icon/16/actions/dialog-ok.png");
+ var btnCancel = new qx.ui.form.Button("Cancel", "icon/16/actions/dialog-cancel.png");
+ var btnSetText = new qx.ui.form.Button("Reload", "icon/16/actions/view-refresh.png");
+
+ btnOK.set({ bottom : 10, right : 10 });
+ btnCancel.set({ bottom : 10, left : 10 });
+ btnSetText.set({ bottom : 10, left : 100 });
+
+ btnCancel.addEventListener("execute", function(e) {
+ dialogEditFrage.close();
+ });
+ btnOK.addEventListener("execute", function(e) {
+ dialogEditFrage.close();
+ });
+
+ btnSetText.addEventListener("execute", function(e) {
+ txtfld.setValue("Some Text here!");
+ txtfld.setFocused(true);
+ });
+
+ add(btnOK, btnCancel, btnSetText);
+ }
+
+
+ var btnOpen = new qx.ui.form.Button("Open the dialog");
+ btnOpen.set({ top : 50, left : 20 });
+ btnOpen.addEventListener("click", function(e) {
+ dialogEditFrage.open();
+ });
+
+ d.add(btnOpen,dialogEditFrage);
+ });
+
+ </script>
+
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Window_4.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Window_4.html
new file mode 100644
index 0000000000..6930d54081
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Window_4.html
@@ -0,0 +1,104 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Dialog with qx.ui.form.TextField and qx.ui.form.TextArea</p>
+ <p>Testing minimize handling.</p>
+ </div>
+
+
+ <script type="text/javascript" language="JavaScript">
+
+ qx.core.Init.getInstance().defineMain(function() {
+
+ var d = qx.ui.core.ClientDocument.getInstance();
+ var txtfld;
+
+ var dialogEditFrage = new qx.ui.window.Window("Edit", "icon/16/apps/accessories-text-editor.png");
+ with(dialogEditFrage) {
+ setSpace(300, 400, 100, 300);
+
+ setShowClose(false);
+
+ var qx_widget = new qx.ui.basic.Atom('Question');
+ with(qx_widget)
+ {
+ setHorizontalChildrenAlign('right');
+ set({top:10,left:10,width:'20%'});
+ };
+ add(qx_widget);
+
+ qx_widget = txtfld = new qx.ui.form.TextArea();
+ with (qx_widget) {
+ set({top:10,right:10,width:'70%'})
+ }
+ add(qx_widget);
+
+ qx_widget = new qx.ui.basic.Atom('Type');
+ with(qx_widget)
+ {
+ setHorizontalChildrenAlign('right');
+ set({top:70,left:10,width:'20%'});
+ };
+ add(qx_widget);
+
+ qx_widget = new qx.ui.form.TextField();
+ with (qx_widget) {
+ set({top:70,right:10,width:'70%'})
+ }
+ add(qx_widget);
+
+
+ var btnOK = new qx.ui.form.Button("OK", "icon/16/actions/dialog-ok.png");
+ var btnCancel = new qx.ui.form.Button("Cancel", "icon/16/actions/dialog-cancel.png");
+ var btnSetText = new qx.ui.form.Button("Reload", "icon/16/actions/view-refresh.png");
+
+ btnOK.set({ bottom : 10, right : 10 });
+ btnCancel.set({ bottom : 10, left : 10 });
+ btnSetText.set({ bottom : 10, left : 100 });
+
+ btnCancel.addEventListener("execute", function(e) {
+ dialogEditFrage.close();
+ });
+ btnOK.addEventListener("execute", function(e) {
+ dialogEditFrage.close();
+ });
+
+ btnSetText.addEventListener("execute", function(e) {
+ txtfld.setValue("Some Text here!");
+ txtfld.setFocused(true);
+ });
+
+ add(btnOK, btnCancel, btnSetText);
+ }
+
+
+ var btnOpen = new qx.ui.form.Button("Open the dialog");
+ btnOpen.set({ top : 50, left : 20 });
+ btnOpen.addEventListener("click", function(e) {
+ dialogEditFrage.open();
+ });
+
+ var btnRestore = new qx.ui.form.Button("Restore the dialog");
+ btnRestore.set({ top : 80, left : 20 });
+ btnRestore.addEventListener("click", function(e) {
+ dialogEditFrage.restore();
+ });
+
+ d.add(btnOpen,btnRestore,dialogEditFrage);
+ });
+
+ </script>
+
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Window_5.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Window_5.html
new file mode 100644
index 0000000000..f4112b5939
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Window_5.html
@@ -0,0 +1,221 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Some tests for zIndex handling for different widgets.</p>
+ </div>
+
+ <script type="text/javascript">
+ qx.core.Init.getInstance().defineMain(function()
+ {
+ var d = qx.ui.core.ClientDocument.getInstance();
+
+
+ var btnaler = new qx.ui.form.Button("Open Alert", "icon/16/status/dialog-error.png");
+ btnaler.setLocation(450, 50);
+ qx.ui.core.ClientDocument.getInstance().add(btnaler);
+
+
+ var aler = new qx.ui.popup.PopupAtom("Attention", "icon/128/status/dialog-error.png");
+ aler.setLocation(40, 70);
+ aler.setBackgroundColor("yellow");
+ aler.setOpacity(0.5);
+ qx.ui.core.ClientDocument.getInstance().add(aler);
+
+ btnaler.addEventListener("execute", function(e)
+ {
+ aler.show();
+ });
+
+
+
+ var bar = new qx.ui.basic.Terminator;
+ bar.setLocation(0, 0);
+ bar.setWidth(50);
+ bar.setBottom(0);
+ bar.setBackgroundColor("black");
+ bar.setOpacity(0.5);
+ bar.setZIndex(1e7);
+ qx.ui.core.ClientDocument.getInstance().add(bar);
+
+
+
+
+ var w1 = new qx.ui.window.Window("Application Window");
+ w1.setSpace(20, 400, 48, 250);
+ d.add(w1);
+
+
+
+ var m1 = new qx.ui.menu.Menu;
+
+ var mb11 = new qx.ui.menu.Button("Open");
+ var mb12 = new qx.ui.menu.Button("Save");
+ var mb13 = new qx.ui.menu.Button("Close");
+ var mb14 = new qx.ui.menu.Button("Exit");
+
+ m1.add(mb11, mb12, mb13, mb14);
+
+ var m2 = new qx.ui.menu.Menu;
+
+ var mb21 = new qx.ui.menu.Button("Cut");
+ var mb22 = new qx.ui.menu.Button("Copy");
+ var mb23 = new qx.ui.menu.Button("Paste");
+
+ m2.add(mb21, mb22, mb23);
+
+ var m3 = new qx.ui.menu.Menu;
+
+ var mb31 = new qx.ui.menu.Button("Toolbars");
+ var mb32 = new qx.ui.menu.Button("Options");
+
+ m3.add(mb31, mb32);
+
+ var m4 = new qx.ui.menu.Menu;
+
+ var mb41 = new qx.ui.menu.Button("Help");
+ var mb42 = new qx.ui.menu.Button("Info");
+
+ m4.add(mb41, mb42);
+
+ qx.ui.core.ClientDocument.getInstance().add(m1, m2, m3, m4);
+
+
+
+
+
+
+
+ var t1 = new qx.ui.toolbar.ToolBar;
+
+ t1.setLocation(0, 0);
+ t1.setRight(0);
+
+ var tb1 = new qx.ui.toolbar.MenuButton("File", m1);
+ var tb2 = new qx.ui.toolbar.MenuButton("Edit", m2);
+ var tb3 = new qx.ui.toolbar.MenuButton("View", m3);
+ var tb4 = new qx.ui.toolbar.MenuButton("Help", m4);
+
+ t1.add(tb1, tb2, tb3, tb4);
+
+ w1.add(t1);
+
+ var tt1 = new qx.ui.popup.ToolTip("File Menu Button");
+ var tt2 = new qx.ui.popup.ToolTip("Edit Menu Button");
+ var tt3 = new qx.ui.popup.ToolTip("View Menu Button");
+ var tt4 = new qx.ui.popup.ToolTip("Help Menu Button");
+
+ tb1.setToolTip(tt1);
+ tb2.setToolTip(tt2);
+ tb3.setToolTip(tt3);
+ tb4.setToolTip(tt4);
+
+ qx.ui.core.ClientDocument.getInstance().add(tt1, tt2, tt3, tt4);
+
+
+
+
+
+
+
+
+ var c1 = new qx.ui.form.ComboBox;
+
+ c1.setLocation(0, 35);
+
+ c1.getList().add(new qx.ui.form.ListItem("Item 1"));
+ c1.getList().add(new qx.ui.form.ListItem("Item 2"));
+ c1.getList().add(new qx.ui.form.ListItem("Item 3"));
+ c1.getList().add(new qx.ui.form.ListItem("Item 4"));
+ c1.getList().add(new qx.ui.form.ListItem("Item 5"));
+
+ w1.add(c1);
+
+
+
+
+
+ var square = new qx.ui.basic.Terminator;
+ square.setDimension(50, 50);
+ square.setLocation(0, 70);
+ square.setBackgroundColor("blue");
+ w1.add(square);
+
+
+ var p1 = new qx.ui.popup.PopupAtom("Hello World");
+ p1.setBorder(4, "solid", "red");
+ p1.setBackgroundColor("yellow");
+ p1.setLocation(0, 70);
+ p1.setAutoHide(false);
+ w1.add(p1);
+
+ var p2 = new qx.ui.popup.PopupAtom("Hello World");
+ p2.setBorder(4, "solid", "yellow");
+ p2.setBackgroundColor("red");
+ p2.setLocation(30, 70);
+ p2.setAutoHide(false);
+ w1.add(p2);
+
+
+ var btn1 = new qx.ui.form.Button("Show1");
+ btn1.setLocation(140, 70);
+ w1.add(btn1);
+
+ var btn2 = new qx.ui.form.Button("Hide1");
+ btn2.setLocation(190, 70);
+ w1.add(btn2);
+
+ btn1.addEventListener("execute", function(e) {
+ p1.show();
+ });
+
+ btn2.addEventListener("execute", function(e) {
+ p1.hide();
+ });
+
+
+
+ var btn3 = new qx.ui.form.Button("Show2");
+ btn3.setLocation(250, 70);
+ w1.add(btn3);
+
+ var btn4 = new qx.ui.form.Button("Hide2");
+ btn4.setLocation(300, 70);
+ w1.add(btn4);
+
+ btn3.addEventListener("execute", function(e) {
+ p2.show();
+ });
+
+ btn4.addEventListener("execute", function(e) {
+ p2.hide();
+ });
+
+
+
+ w1.open();
+
+
+
+
+
+ var w2 = new qx.ui.window.Window("Test 2");
+ w2.setDimension(400, 200);
+ w2.setLocation(200, 200);
+ qx.ui.core.ClientDocument.getInstance().add(w2);
+ w2.show();
+
+ });
+ </script>
+</body>
+</html> \ No newline at end of file
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Window_6.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Window_6.html
new file mode 100644
index 0000000000..9f84b0e6ec
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/Window_6.html
@@ -0,0 +1,109 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <title>qooxdoo &raquo; Demo &raquo; Sample</title>
+ <link type="text/css" rel="stylesheet" href="../../css/layout.css"/>
+ <!--[if IE]>
+ <link type="text/css" rel="stylesheet" href="../../css/layout_ie.css"/>
+ <![endif]-->
+ <script type="text/javascript" src="../../script/sample.js"></script>
+</head>
+<body>
+ <script type="text/javascript" src="../../script/layout.js"></script>
+
+ <div id="demoDescription">
+ <p>Dialog with qx.ui.form.TextField and qx.ui.form.TextArea</p>
+ <p>Testing initial focus handling.</p>
+ </div>
+
+
+ <script type="text/javascript" language="JavaScript">
+
+
+ qx.core.Init.getInstance().defineMain(function() {
+
+ var d = qx.ui.core.ClientDocument.getInstance();
+ var txtfld;
+
+ var dialogEditFrage = new qx.ui.window.Window("Edit", "icon/16/apps/accessories-text-editor.png");
+
+
+ with(dialogEditFrage) {
+ setSpace(300, 400, 100, 300);
+
+ setShowClose(false);
+
+ var qxObj = new qx.ui.basic.Atom('Question');
+ with(qxObj)
+ {
+ setHorizontalChildrenAlign('right');
+ set({top:10,left:10,width:'20%'});
+ };
+ add(qxObj);
+
+ qxObj = txtfld = new qx.ui.form.TextArea();
+ with (qxObj) {
+ set({top:10,right:10,width:'70%'})
+ }
+ add(qxObj);
+
+ txtfld.addEventListener("appear", function(e) {
+ this.focus();
+ });
+
+ qxObj = new qx.ui.basic.Atom('Type');
+ with(qxObj)
+ {
+ setHorizontalChildrenAlign('right');
+ set({top:70,left:10,width:'20%'});
+ };
+ add(qxObj);
+
+ qxObj = new qx.ui.form.TextField();
+ with (qxObj) {
+ set({top:70,right:10,width:'70%'})
+ }
+ add(qxObj);
+
+
+ var btnOK = new qx.ui.form.Button("OK", "icon/16/actions/dialog-ok.png");
+ var btnCancel = new qx.ui.form.Button("Cancel", "icon/16/actions/dialog-cancel.png");
+ var btnSetFocus = new qx.ui.form.Button("Set Focus To First Field", "icon/16/actions/view-refresh.png");
+
+ btnOK.set({ bottom : 10, right : 10 });
+ btnCancel.set({ bottom : 10, left : 10 });
+ btnSetFocus.set({ bottom : 10, left : 100 });
+
+ btnCancel.addEventListener("execute", function(e) {
+ dialogEditFrage.close();
+ });
+ btnOK.addEventListener("execute", function(e) {
+ dialogEditFrage.close();
+ });
+
+ btnSetFocus.addEventListener("execute", function(e) {
+ txtfld.focus();
+ });
+
+ add(btnOK, btnCancel, btnSetFocus);
+ }
+
+ var btnOpen = new qx.ui.form.Button("Open the dialog");
+ btnOpen.set({ top : 50, left : 20 });
+ btnOpen.addEventListener("click", function(e) {
+ dialogEditFrage.open();
+ });
+
+ var btnRestore = new qx.ui.form.Button("Restore the dialog");
+ btnRestore.set({ top : 80, left : 20 });
+ btnRestore.addEventListener("click", function(e) {
+ dialogEditFrage.restore();
+ });
+
+ d.add(btnOpen,btnRestore,dialogEditFrage);
+ });
+
+ </script>
+
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/bigFont.css b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/bigFont.css
new file mode 100644
index 0000000000..568085d899
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/bigFont.css
@@ -0,0 +1,3 @@
+.box {
+ font-size: large;
+}
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/boldFont.css b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/boldFont.css
new file mode 100644
index 0000000000..c7f3aca388
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/boldFont.css
@@ -0,0 +1,3 @@
+.box {
+ font-weight: bold;
+}
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/filesize/400kb.xml b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/filesize/400kb.xml
new file mode 100644
index 0000000000..0f448c2f85
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/filesize/400kb.xml
@@ -0,0 +1,10224 @@
+<?xml version="1.0" encoding="ISO-8859-15"?>
+<all>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+</all>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/filesize/40kb.xml b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/filesize/40kb.xml
new file mode 100644
index 0000000000..8cc7bd573f
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/filesize/40kb.xml
@@ -0,0 +1,1003 @@
+<?xml version="1.0" encoding="ISO-8859-15"?>
+<all>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+<data>abcdefghijklmnopqrstuvwxyz</data>
+</all>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/anita.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/anita.html
new file mode 100644
index 0000000000..44c7219ef4
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/anita.html
@@ -0,0 +1,11 @@
+<html>
+ <body>
+ <h1>Anita Hummel</h1>
+ <p>42</p>
+ <p>Getho Bals</p>
+ <p>22432</p>
+ <p>Paris</p>
+ <p>France</p>
+ <p>0044.44930209</p>
+ </body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/anita.js b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/anita.js
new file mode 100644
index 0000000000..6f348b6aea
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/anita.js
@@ -0,0 +1,10 @@
+{
+ "name" : "Hummel",
+ "givenName" : "Anita",
+ "age" : 42,
+ "street" : "Getho Bals",
+ "plz" : 22432,
+ "city" : "Paris",
+ "country" : "France",
+ "phone" : "0044.44930209"
+}
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/anita.txt b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/anita.txt
new file mode 100644
index 0000000000..a8a98376eb
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/anita.txt
@@ -0,0 +1,8 @@
+name = Hummel
+givenName = Anita
+age = 42
+street = Getho Bals
+plz = 22432
+city = Paris
+country = France
+phone = 0044.44930209
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/anita.xml b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/anita.xml
new file mode 100644
index 0000000000..ecad1f77aa
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/anita.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<result>
+ <name>Hummel</name>
+ <givenName>Anita</givenName>
+ <age>42</age>
+ <street>Getho Bals</street>
+ <plz>22432</plz>
+ <city>Paris</city>
+ <country>France</country>
+ <phone>0044.44930209</phone>
+</result>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/harald.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/harald.html
new file mode 100644
index 0000000000..610c1584aa
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/harald.html
@@ -0,0 +1,11 @@
+<html>
+ <body>
+ <h1>Harald Schmidt</h1>
+ <p>65</p>
+ <p>Karlsruher Allee</p>
+ <p>78392</p>
+ <p>Stuttgart</p>
+ <p>Germany</p>
+ <p>0049.750930302</p>
+ </body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/harald.js b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/harald.js
new file mode 100644
index 0000000000..f593737448
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/harald.js
@@ -0,0 +1,10 @@
+{
+ "name" : "Schmidt",
+ "givenName" : "Harald",
+ "age" : 65,
+ "street" : "Karlsruher Allee",
+ "plz" : 78392,
+ "city" : "Stuttgart",
+ "country" : "Germany",
+ "phone" : "0049.750930302"
+}
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/harald.txt b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/harald.txt
new file mode 100644
index 0000000000..215a27dd9e
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/harald.txt
@@ -0,0 +1,8 @@
+name = Schmidt
+givenName = Harald
+age = 65
+street = Karlsruher Allee
+plz = 78392
+city = Stuttgart
+country = Germany
+phone = 0049.750930302
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/harald.xml b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/harald.xml
new file mode 100644
index 0000000000..425a8fdc21
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/harald.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<result>
+ <name>Schmidt</name>
+ <givenName>Harald</givenName>
+ <age>65</age>
+ <street>Karlsruher Allee</street>
+ <plz>78392</plz>
+ <city>Stuttgart</city>
+ <country>Germany</country>
+ <phone>0049.750930302</phone>
+</result>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/lisbeth.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/lisbeth.html
new file mode 100644
index 0000000000..e2a5a55504
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/lisbeth.html
@@ -0,0 +1,11 @@
+<html>
+ <body>
+ <h1>Lisbeth Meyer</h1>
+ <p>74</p>
+ <p>Burlington Plaza</p>
+ <p>32323</p>
+ <p>New York</p>
+ <p>United States</p>
+ <p>0030.302020234</p>
+ </body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/lisbeth.js b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/lisbeth.js
new file mode 100644
index 0000000000..40dfd03463
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/lisbeth.js
@@ -0,0 +1,10 @@
+{
+ "name" : "Meyer",
+ "givenName" : "Lisbeth",
+ "age" : 74,
+ "street" : "Burlington Plaza",
+ "plz" : 32323,
+ "city" : "New York",
+ "country" : "United States",
+ "phone" : "0030.302020234"
+}
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/lisbeth.txt b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/lisbeth.txt
new file mode 100644
index 0000000000..def297f12a
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/lisbeth.txt
@@ -0,0 +1,8 @@
+name = Meyer
+givenName = Lisbeth
+age = 74
+street = Burlington Plaza
+plz = 32323
+city = New York
+country = United States
+phone = 0030.302020234
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/lisbeth.xml b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/lisbeth.xml
new file mode 100644
index 0000000000..a67a98d4ae
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/lisbeth.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<result>
+ <name>Meyer</name>
+ <givenName>Lisbeth</givenName>
+ <age>74</age>
+ <street>Burlington Plaza</street>
+ <plz>32323</plz>
+ <city>New York</city>
+ <country>United States</country>
+ <phone>0030.302020234</phone>
+</result>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/paul.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/paul.html
new file mode 100644
index 0000000000..f43ad8b091
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/paul.html
@@ -0,0 +1,11 @@
+<html>
+ <body>
+ <h1>Paul Fuettner</h1>
+ <p>27</p>
+ <p>Bismarckstrasse</p>
+ <p>33990</p>
+ <p>Garbsen</p>
+ <p>Germany</p>
+ <p>0049.57232067</p>
+ </body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/paul.js b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/paul.js
new file mode 100644
index 0000000000..9739f477bb
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/paul.js
@@ -0,0 +1,10 @@
+{
+ "name" : "Fuettner",
+ "givenName" : "Paul",
+ "age" : 27,
+ "street" : "Bismarckstrasse",
+ "plz" : 33990,
+ "city" : "Garbsen",
+ "country" : "Germany",
+ "phone" : "0049.57232067"
+}
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/paul.txt b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/paul.txt
new file mode 100644
index 0000000000..c79abc65a1
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/paul.txt
@@ -0,0 +1,8 @@
+name = Fuettner
+givenName = Paul
+age = 27
+street = Bismarckstrasse
+plz = 33990
+city = Garbsen
+country = Germany
+phone = 0049.57232067
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/paul.xml b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/paul.xml
new file mode 100644
index 0000000000..3ddfa44b29
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/data/persons/paul.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="iso-8859-1"?>
+<result>
+ <name>Fuettner</name>
+ <givenName>Paul</givenName>
+ <age>27</age>
+ <street>Bismarckstrasse</street>
+ <plz>33990</plz>
+ <city>Garbsen</city>
+ <country>Germany</country>
+ <phone>0049.57232067</phone>
+</result>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/image/flash/color/file1.swf b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/image/flash/color/file1.swf
new file mode 100644
index 0000000000..2e6d69a3fd
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/image/flash/color/file1.swf
Binary files differ
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/image/flash/color/file10.swf b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/image/flash/color/file10.swf
new file mode 100644
index 0000000000..eeafa9a8f3
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/image/flash/color/file10.swf
Binary files differ
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/image/flash/color/file2.swf b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/image/flash/color/file2.swf
new file mode 100644
index 0000000000..51c8f0ff76
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/image/flash/color/file2.swf
Binary files differ
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/image/flash/color/file3.swf b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/image/flash/color/file3.swf
new file mode 100644
index 0000000000..0b6b56be85
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/image/flash/color/file3.swf
Binary files differ
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/image/flash/color/file4.swf b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/image/flash/color/file4.swf
new file mode 100644
index 0000000000..746baa8cd9
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/image/flash/color/file4.swf
Binary files differ
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/image/flash/color/file5.swf b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/image/flash/color/file5.swf
new file mode 100644
index 0000000000..a3333e1c31
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/image/flash/color/file5.swf
Binary files differ
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/image/flash/color/file6.swf b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/image/flash/color/file6.swf
new file mode 100644
index 0000000000..2cad550081
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/image/flash/color/file6.swf
Binary files differ
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/image/flash/color/file7.swf b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/image/flash/color/file7.swf
new file mode 100644
index 0000000000..b5f4eb4ddf
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/image/flash/color/file7.swf
Binary files differ
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/image/flash/color/file8.swf b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/image/flash/color/file8.swf
new file mode 100644
index 0000000000..54c9a11edc
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/image/flash/color/file8.swf
Binary files differ
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/image/flash/color/file9.swf b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/image/flash/color/file9.swf
new file mode 100644
index 0000000000..cc41ff1c10
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/image/flash/color/file9.swf
Binary files differ
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/image/flash/fo_tester.fla b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/image/flash/fo_tester.fla
new file mode 100644
index 0000000000..afd4bb6134
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/image/flash/fo_tester.fla
Binary files differ
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/image/flash/fo_tester.swf b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/image/flash/fo_tester.swf
new file mode 100644
index 0000000000..8e0b966bca
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/image/flash/fo_tester.swf
Binary files differ
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/image/grid_dialog_box.png b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/image/grid_dialog_box.png
new file mode 100644
index 0000000000..2bc24a8018
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/image/grid_dialog_box.png
Binary files differ
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/index.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/index.html
new file mode 100644
index 0000000000..ac16317e80
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/html/test/index.html
@@ -0,0 +1,8 @@
+<html>
+ <head>
+ <script type="text/javascript">window.location.href="Atom_1.html";</script>
+ </head>
+ <body>
+ <a href="Atom1.html">Continue...</a>
+ </body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/index.html b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/index.html
new file mode 100644
index 0000000000..73fbb2015a
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/index.html
@@ -0,0 +1,122 @@
+<html>
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-15" />
+ <title>qooxdoo demo</title>
+ <style type="text/css">
+ *{
+ box-sizing: border-box;
+ -moz-box-sizing: border-box;
+ margin: 0;
+ padding: 0;
+ }
+
+ body{
+ font-size: 12px;
+ font-family: Arial, "Bitstream Vera Sans", Verdana, sans-serif;
+ margin: 0;
+ padding: 0;
+ }
+
+ p{
+ margin: 6px 0;
+ }
+
+ #demoHead,
+ #demoFoot{
+ position: absolute;
+ left: 0px;
+ right: 0px;
+ width: 100%;
+ background: #134275;
+ padding: 5px 8px;
+ color: #DEFF83;
+ font-weight: bold;
+ overflow: hidden;
+ z-index: 1000000000;
+ }
+
+ #demoHead{
+ top: 0px;
+ }
+
+ #demoHead span{
+ font-weight: normal;
+ color: white;
+ }
+
+ img{
+ box-sizing: content-box;
+ -moz-box-sizing: content-box;
+ }
+
+ #content{
+ margin: 40px 20px 0;
+ width: 400px;
+ }
+
+ h1{
+ font-size: 22px;
+ margin-bottom: 20px;
+ color: #134275;
+ }
+
+ h2{
+ font-size: 16px;
+ color: #134275;
+ margin-bottom: 10px;
+ }
+
+ h3{
+ font-size: 14px;
+ color: #1D65B3;
+ }
+
+ a{
+ color: #335EA8;
+ }
+
+ li{
+ margin-left: 16px;
+ list-style: square;
+ margin-bottom: 20px;
+ }
+
+ p{
+ font-size: 12px;
+ }
+
+ ul ul{
+ margin-top: 20px;
+ }
+
+ p.note{
+ padding: 10px;
+ background: #F3FFD1;
+ color: #444444;
+ margin: 20px 0;
+ }
+ </style>
+</head>
+<body>
+ <div id="demoHead">qooxdoo: <span>The new era of web interface development</span></div>
+
+ <div id="content" style="position:absolute;top:0px;left:0px">
+
+ <h1>qooxdoo <span>samples</demo></h1>
+ <ul>
+ <li>
+ <h2><a href="html/example/index.html">Example</a></h2>
+ <p>Easily to understand examples. The basic features of each qooxdoo widget is demonstrated in a separate example. This section is probably the one you are looking for!</p>
+ </li>
+ <li>
+ <h2><a href="html/test/index.html">Test</a></h2>
+ <p>These tests demonstrate internal functionality of qooxdoo. Not really useful for the typical qooxdoo user, but needed for developers to test some complex layout stuff, performance related problems and more. The tests may not always be up-to-date and functioning!</p>
+ </li>
+ <li>
+ <h2><a href="html/performance/index.html">Performance</a></h2>
+ <p>These tests are used to test performance of different javascript/qooxdoo rountines and allows them to compare them with each other</p>
+ </li>
+ </ul>
+ </div>
+</body>
+</html>
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/translation/C.po b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/translation/C.po
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/source/translation/C.po
diff --git a/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/tool/layout.py b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/tool/layout.py
new file mode 100755
index 0000000000..b37ff7090a
--- /dev/null
+++ b/webapps/qooxdoo-0.6.5-sdk/frontend/application/sample/tool/layout.py
@@ -0,0 +1,149 @@
+#!/usr/bin/env python
+# -*- coding: utf-8 -*-
+
+import sys, os, optparse, codecs
+
+
+
+basic = u"""
+qx.log.Logger.ROOT_LOGGER.removeAllAppenders();
+qx.log.Logger.ROOT_LOGGER.addAppender(new qx.log.DivAppender("demoDebug"));
+
+document.write('<div id="demoHead">qooxdoo: <span>The new era of web development</span></div>');
+document.write('<div id="demoFoot">');
+document.write('[<a href="javascript:qx.dev.Pollution.consoleInfo(\"window\");">Global Pollution</a>] &#160;');
+document.write('[<a href="javascript:qx.core.Object.summary();">Object Summary</a>] &#160;');
+document.write('</div>');
+document.write('<div id="demoDebug"></div>');
+document.write('<div id="demoFrame">&#160;</div>');
+
+(function(sitemap)
+{
+ document.write('<select id="demoFiles" onchange="if(this.options[this.selectedIndex].value)window.location.href=this.options[this.selectedIndex].value">');
+ var url = window.location.pathname.split('/');
+ var basename = window.location.href.substring(0, window.location.href.lastIndexOf("/"));
+ var cat = url[url.length-2];
+ var file = url[url.length-1];
+
+ var pages = sitemap[cat];
+ pages.sort();
+
+ var index = pages.indexOf(file);
+
+ for( var i=0; i<pages.length; i++ )
+ {
+ var href = window.location.href;
+ var page = cat + "/" + pages[i];
+ var pageuri = "../" + page;
+ var pageid = pages[i].replace(".html", "").replace("_", " ");
+ document.write('<option value="' + pageuri + '"');
+ if(href.lastIndexOf(page) === href.length-page.length) {
+ document.write(' selected="selected"');
+
+ }
+ document.write('>' + pageid + '</option>');
+ }
+ document.write('</select>');
+
+ document.write('<div id="demoJump">');
+ if (index > 0) {
+ document.write("<button onclick='window.location.href=\\"" + basename + '/' + pages[index-1] + "\\"'>&lt;</button>");
+ }
+ if (index < pages.length-1) {
+ document.write("<button onclick='window.location.href=\\"" + basename + '/' + pages[index+1] + "\\"'>&gt;</button>");
+ }
+ document.write('</div>');
+
+})(%s);
+
+(function()
+{
+ var url = location.href;
+ var pos = url.indexOf("/html/")+6;
+ var split = url.substring(pos).split("/");
+ var category = split[0];
+ category = category.charAt(0).toUpperCase() + category.substring(1);
+ var pagename = split[1].replace(".html", "").replace(/_/g, " ");
+ pagename = pagename.charAt(0).toUpperCase() + pagename.substring(1);
+
+ document.title = "qooxdoo » Demo » Sample » " + category + " » " + pagename;
+
+ if (window.location.href.indexOf("demo.qooxdoo.org") != -1)
+ {
+ document.write('<script type="text/javascript">var a_vars = []; var pagename=""; var phpmyvisitesSite = 5; var phpmyvisitesURL = "http://counter.qooxdoo.org/phpmyvisites.php";</script>');
+ document.write('<script type="text/javascript" src="http://counter.qooxdoo.org/phpmyvisites.js"></script>');
+ document.write('<script type="text/javascript" src="http://www.google-analytics.com/urchin.js"></script>');
+ document.write('<script type="text/javascript">_uacct = "UA-415440-1"; function urchinStart() { urchinTracker() }; if(window.addEventListener)window.addEventListener("load", urchinStart, false); else if(window.attachEvent)window.attachEvent("onload", urchinStart);</script>');
+ }
+})();
+"""
+
+
+def main(dist, scan):
+ res = ""
+ res += "{"
+
+ firstCategory = True
+ # for category in os.listdir(scan):
+ for category in [ "example", "test", "performance" ]:
+ if category == ".svn":
+ continue
+
+ if not firstCategory:
+ res += ","
+
+ res += category + ":["
+
+ firstItem = True
+ for item in os.listdir(os.path.join(scan, category)):
+ if item == ".svn":
+ continue
+
+ if os.path.splitext(item)[1] != ".html":
+ continue
+
+ if item == "index.html":
+ continue
+
+ if not firstItem:
+ res += ","
+
+ res += '"%s"' % item
+
+ firstItem = False
+
+ res += "]"
+ firstCategory = False
+
+ res += "}"
+
+ distdir = os.path.dirname(dist)
+
+ if not os.path.exists(distdir):
+ os.makedirs(distdir)
+
+ content = basic % res
+
+ outputFile = codecs.open(dist, encoding="utf-8", mode="w", errors="replace")
+ outputFile.write(content)
+ outputFile.flush()
+ outputFile.close()
+
+
+
+
+if __name__ == '__main__':
+ try:
+ parser = optparse.OptionParser()
+
+ (options, args) = parser.parse_args()
+
+ dist = args[0]
+ scan = args[1]
+
+ main(dist, scan)
+
+ except KeyboardInterrupt:
+ print
+ print " * Keyboard Interrupt"
+ sys.exit(1)