r19141: add a reasonable subset of the qooxdoo runtime environment, and example appli...
[jra/samba/.git] / swat / apps / qooxdoo-examples / example / Tree_1.html
1 <html>
2 <head>
3   <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
4   <title>qooxdoo &raquo; Demo</title>
5   <link type="text/css" rel="stylesheet" href="../../resource/css/layout.css"/>
6   <!--[if IE]>
7   <link type="text/css" rel="stylesheet" href="../../resource/css/layout_ie.css"/>
8   <![endif]-->
9   <script type="text/javascript" src="../../script/qx.js"></script>
10 </head>
11 <body>
12   <script type="text/javascript" src="../../script/layout.js"></script>
13
14   <div id="demoDescription">
15     <p>Shows a tree, with user-defined icons for some nodes.</p>
16   </div>
17
18   <script type="text/javascript">
19     qx.core.Init.getInstance().defineMain(function()
20     {
21       var t = new qx.ui.tree.Tree("Root");
22
23       with(t)
24       {
25         setBackgroundColor(255);
26         setBorder(qx.renderer.border.BorderPresets.getInstance().inset);
27         setOverflow("scrollY");
28
29         setHeight(null);
30         setTop(48);
31         setLeft(20);
32         setWidth(200);
33         setBottom(48);
34       };
35
36       qx.ui.core.ClientDocument.getInstance().add(t);
37       // One icon for selected and one for unselected states
38       var te1 = new qx.ui.tree.TreeFolder("Desktop", "icon/16/desktop.png", "icon/16/dictionary.png");
39       t.add(te1);
40
41       var te1_1 = new qx.ui.tree.TreeFolder("Files");
42       var te1_2 = new qx.ui.tree.TreeFolder("Workspace");
43       var te1_3 = new qx.ui.tree.TreeFolder("Network");
44       var te1_4 = new qx.ui.tree.TreeFolder("Trash");
45
46       te1.add(te1_1, te1_2, te1_3, te1_4);
47
48       // One icon specified, and used for both selected unselected states
49       var te1_2_1 = new qx.ui.tree.TreeFile("Windows (C:)", "icon/16/harddrive.png");
50       var te1_2_2 = new qx.ui.tree.TreeFile("Documents (D:)", "icon/16/harddrive.png");
51
52       te1_2.add(te1_2_1, te1_2_2);
53
54
55       var te2 = new qx.ui.tree.TreeFolder("Inbox");
56
57       var te2_1 = new qx.ui.tree.TreeFolder("Presets");
58       var te2_2 = new qx.ui.tree.TreeFolder("Sent");
59       var te2_3 = new qx.ui.tree.TreeFolder("Trash", "icon/16/trash.png");
60       var te2_4 = new qx.ui.tree.TreeFolder("Data");
61       var te2_5 = new qx.ui.tree.TreeFolder("Edit");
62
63       var te2_5_1 = new qx.ui.tree.TreeFolder("Chat");
64       var te2_5_2 = new qx.ui.tree.TreeFolder("Pustefix");
65       var te2_5_3 = new qx.ui.tree.TreeFolder("TINC");
66
67       var te2_5_3_1 = new qx.ui.tree.TreeFolder("Announce");
68       var te2_5_3_2 = new qx.ui.tree.TreeFolder("Devel");
69
70       te2_5_3.add(te2_5_3_1, te2_5_3_2);
71
72       te2_5.add(te2_5_1, te2_5_2, te2_5_3);
73
74       var te2_6 = new qx.ui.tree.TreeFolder("Lists");
75
76       var te2_6_1 = new qx.ui.tree.TreeFolder("Relations");
77       var te2_6_2 = new qx.ui.tree.TreeFolder("Company");
78       var te2_6_3 = new qx.ui.tree.TreeFolder("Questions");
79       var te2_6_4 = new qx.ui.tree.TreeFolder("Internal");
80       var te2_6_5 = new qx.ui.tree.TreeFolder("Products");
81       var te2_6_6 = new qx.ui.tree.TreeFolder("Press");
82       var te2_6_7 = new qx.ui.tree.TreeFolder("Development");
83       var te2_6_8 = new qx.ui.tree.TreeFolder("Competition");
84
85       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);
86
87       var te2_7 = new qx.ui.tree.TreeFolder("Personal");
88
89       var te2_7_1 = new qx.ui.tree.TreeFolder("Bugs");
90       var te2_7_2 = new qx.ui.tree.TreeFolder("Family");
91       var te2_7_3 = new qx.ui.tree.TreeFolder("Projects");
92       var te2_7_4 = new qx.ui.tree.TreeFolder("Holiday");
93
94       te2_7.add(te2_7_1, te2_7_2, te2_7_3, te2_7_4);
95
96       var te2_8 = new qx.ui.tree.TreeFolder("Big");
97
98       for (var i=0;i<50; i++) {
99         te2_8.add(new qx.ui.tree.TreeFolder("Item " + i));
100       };
101
102       var te2_9 = new qx.ui.tree.TreeFolder("Spam");
103
104       te2.add(te2_1, te2_2, te2_3, te2_4, te2_5, te2_6, te2_7, te2_8, te2_9);
105
106       t.add(te2);
107       qx.ui.core.ClientDocument.getInstance().add(t);
108
109
110
111
112
113
114       var commandFrame = new qx.ui.groupbox.GroupBox("Control");
115
116       with(commandFrame)
117       {
118         setTop(48);
119         setLeft(250);
120
121         setWidth("auto");
122         setHeight("auto");
123       };
124
125       qx.ui.core.ClientDocument.getInstance().add(commandFrame);
126
127
128
129
130       var tCurrentLabel = new qx.ui.basic.Atom("Current Folder: ");
131
132       with(tCurrentLabel)
133       {
134         setLeft(0);
135         setTop(0);
136       };
137
138       commandFrame.add(tCurrentLabel);
139
140
141
142       var tCurrentInput = new qx.ui.form.TextField;
143
144       with(tCurrentInput)
145       {
146         setLeft(0);
147         setRight(0);
148         setTop(20);
149
150         setReadOnly(true);
151       };
152
153       commandFrame.add(tCurrentInput);
154
155       t.getManager().addEventListener("changeSelection", function(e) {
156         tCurrentInput.setValue(e.getData()[0]._labelObject.getHtml());
157       });
158
159
160
161       var tDoubleClick = new qx.ui.form.CheckBox("Use double click?");
162
163       with(tDoubleClick) {
164         setTop(60);
165         setLeft(0);
166       };
167
168       commandFrame.add(tDoubleClick);
169
170       tDoubleClick.addEventListener("changeChecked", function(e) { t.setUseDoubleClick(e.getData()); });
171
172
173
174
175       var tTreeLines = new qx.ui.form.CheckBox("Use tree lines?");
176
177       with(tTreeLines) {
178         setTop(80);
179         setLeft(0);
180         setChecked(true);
181       };
182
183       commandFrame.add(tTreeLines);
184
185       tTreeLines.addEventListener("changeChecked", function(e) { t.setUseTreeLines(e.getData()); });
186
187
188     });
189   </script>
190 </body>
191 </html>