rsence 2.0.0.0.pre

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (311) hide show
  1. data/INSTALL.rdoc +295 -0
  2. data/LICENSE +622 -0
  3. data/README.rdoc +24 -0
  4. data/VERSION +1 -0
  5. data/bin/build_client.rb +254 -0
  6. data/bin/help +6 -0
  7. data/bin/launch.rb +120 -0
  8. data/bin/rdoc.sh +2 -0
  9. data/bin/restart +6 -0
  10. data/bin/rsence +120 -0
  11. data/bin/run +6 -0
  12. data/bin/run.rb +6 -0
  13. data/bin/save +6 -0
  14. data/bin/start +6 -0
  15. data/bin/status +6 -0
  16. data/bin/stop +6 -0
  17. data/conf/config.ru +5 -0
  18. data/conf/default_conf.yaml +337 -0
  19. data/conf/default_strings.yaml +77 -0
  20. data/conf/local_conf.yaml +14 -0
  21. data/conf/unicorn.conf +78 -0
  22. data/js/comm/comm/autosync/autosync.js +18 -0
  23. data/js/comm/comm/autosync/js.inc +0 -0
  24. data/js/comm/comm/comm.js +195 -0
  25. data/js/comm/comm/js.inc +0 -0
  26. data/js/comm/comm/queue/js.inc +0 -0
  27. data/js/comm/comm/queue/queue.js +183 -0
  28. data/js/comm/comm/session/js.inc +0 -0
  29. data/js/comm/comm/session/session.js +51 -0
  30. data/js/comm/comm/sessionwatcher/js.inc +0 -0
  31. data/js/comm/comm/sessionwatcher/sessionwatcher.js +43 -0
  32. data/js/comm/comm/transporter/js.inc +0 -0
  33. data/js/comm/comm/transporter/transporter.js +257 -0
  34. data/js/comm/comm/urlresponder/js.inc +0 -0
  35. data/js/comm/comm/urlresponder/urlresponder.js +148 -0
  36. data/js/comm/comm/values/js.inc +0 -0
  37. data/js/comm/comm/values/values.js +432 -0
  38. data/js/comm/jsloader/js.inc +0 -0
  39. data/js/comm/jsloader/jsloader.js +114 -0
  40. data/js/comm/reloadapp/js.inc +0 -0
  41. data/js/comm/reloadapp/reloadapp.js +150 -0
  42. data/js/comm/reloadapp/themes/default/reloadapp_warning-ie6.gif +0 -0
  43. data/js/comm/reloadapp/themes/default/reloadapp_warning.png +0 -0
  44. data/js/comm/sha/js.inc +0 -0
  45. data/js/comm/sha/sha.js +432 -0
  46. data/js/comm/values/value/js.inc +0 -0
  47. data/js/comm/values/value/value.js +182 -0
  48. data/js/comm/values/valuematrix/js.inc +0 -0
  49. data/js/comm/values/valuematrix/valuematrix.js +138 -0
  50. data/js/controls/button/button.js +57 -0
  51. data/js/controls/button/js.inc +0 -0
  52. data/js/controls/button/themes/bright/button.css +89 -0
  53. data/js/controls/button/themes/bright/button.html +7 -0
  54. data/js/controls/button/themes/bright/button_parts1-ie6.gif +0 -0
  55. data/js/controls/button/themes/bright/button_parts1.png +0 -0
  56. data/js/controls/button/themes/default/button.css +89 -0
  57. data/js/controls/button/themes/default/button.html +7 -0
  58. data/js/controls/button/themes/default/button_parts1-ie6.gif +0 -0
  59. data/js/controls/button/themes/default/button_parts1.png +0 -0
  60. data/js/controls/checkbox/checkbox.js +47 -0
  61. data/js/controls/checkbox/js.inc +0 -0
  62. data/js/controls/checkbox/themes/default/checkbox.css +69 -0
  63. data/js/controls/checkbox/themes/default/checkbox.html +5 -0
  64. data/js/controls/checkbox/themes/default/checkbox_parts1-ie6.gif +0 -0
  65. data/js/controls/checkbox/themes/default/checkbox_parts1.png +0 -0
  66. data/js/controls/datetime/calendar/calendar.js +197 -0
  67. data/js/controls/datetime/calendar/js.inc +0 -0
  68. data/js/controls/datetime/calendar/themes/default/calendar.css +108 -0
  69. data/js/controls/datetime/calendar/themes/default/calendar.html +9 -0
  70. data/js/controls/datetime/calendar/themes/default/calendar_arrows-ie6.gif +0 -0
  71. data/js/controls/datetime/calendar/themes/default/calendar_arrows.png +0 -0
  72. data/js/controls/datetime/datetimevalue/datetimevalue.js +246 -0
  73. data/js/controls/datetime/datetimevalue/js.inc +0 -0
  74. data/js/controls/datetime/timesheet/js.inc +0 -0
  75. data/js/controls/datetime/timesheet/themes/default/timesheet.css +30 -0
  76. data/js/controls/datetime/timesheet/themes/default/timesheet.html +2 -0
  77. data/js/controls/datetime/timesheet/timesheet.js +182 -0
  78. data/js/controls/datetime/timesheet_item/js.inc +0 -0
  79. data/js/controls/datetime/timesheet_item/themes/default/timesheet_item.css +42 -0
  80. data/js/controls/datetime/timesheet_item/themes/default/timesheet_item.html +8 -0
  81. data/js/controls/datetime/timesheet_item/timesheet_item.js +247 -0
  82. data/js/controls/datetime/timesheet_item_edit/js.inc +0 -0
  83. data/js/controls/datetime/timesheet_item_edit/timesheet_item_edit.js +274 -0
  84. data/js/controls/dialogs/alert_sheet/alert_sheet.js +62 -0
  85. data/js/controls/dialogs/alert_sheet/js.inc +0 -0
  86. data/js/controls/dialogs/confirm_sheet/confirm_sheet.js +36 -0
  87. data/js/controls/dialogs/confirm_sheet/js.inc +0 -0
  88. data/js/controls/dialogs/sheet/js.inc +0 -0
  89. data/js/controls/dialogs/sheet/sheet.js +83 -0
  90. data/js/controls/dialogs/sheet/themes/default/sheet.css +64 -0
  91. data/js/controls/dialogs/sheet/themes/default/sheet.html +14 -0
  92. data/js/controls/dialogs/sheet/themes/default/sheet_bg-ie6.gif +0 -0
  93. data/js/controls/dialogs/sheet/themes/default/sheet_bg.png +0 -0
  94. data/js/controls/dialogs/sheet/themes/default/sheet_dim-ie6.gif +0 -0
  95. data/js/controls/dialogs/sheet/themes/default/sheet_dim.png +0 -0
  96. data/js/controls/dialogs/sheet/themes/default/sheet_parts1-ie6.gif +0 -0
  97. data/js/controls/dialogs/sheet/themes/default/sheet_parts1.png +0 -0
  98. data/js/controls/dialogs/sheet/themes/default/sheet_parts2-ie6.gif +0 -0
  99. data/js/controls/dialogs/sheet/themes/default/sheet_parts2.png +0 -0
  100. data/js/controls/dialogs/sheet/themes/default/sheet_warning-ie6.gif +0 -0
  101. data/js/controls/dialogs/sheet/themes/default/sheet_warning.png +0 -0
  102. data/js/controls/imageview/imageview.js +108 -0
  103. data/js/controls/imageview/js.inc +0 -0
  104. data/js/controls/imageview/themes/default/blank.gif +0 -0
  105. data/js/controls/lists/checkboxlist/checkboxlist.js +170 -0
  106. data/js/controls/lists/checkboxlist/js.inc +0 -0
  107. data/js/controls/lists/listitems/js.inc +0 -0
  108. data/js/controls/lists/listitems/listitems.js +65 -0
  109. data/js/controls/lists/radiobuttonlist/js.inc +0 -0
  110. data/js/controls/lists/radiobuttonlist/radiobuttonlist.js +126 -0
  111. data/js/controls/passwordcontrol/js.inc +0 -0
  112. data/js/controls/passwordcontrol/passwordcontrol.js +22 -0
  113. data/js/controls/passwordcontrol/themes/default/passwordcontrol.css +0 -0
  114. data/js/controls/passwordcontrol/themes/default/passwordcontrol.html +18 -0
  115. data/js/controls/progress/progressbar/js.inc +0 -0
  116. data/js/controls/progress/progressbar/progressbar.js +36 -0
  117. data/js/controls/progress/progressbar/themes/default/progressbar.css +16 -0
  118. data/js/controls/progress/progressbar/themes/default/progressbar.html +2 -0
  119. data/js/controls/progress/progressindicator/js.inc +0 -0
  120. data/js/controls/progress/progressindicator/progressindicator.js +43 -0
  121. data/js/controls/radiobutton/js.inc +0 -0
  122. data/js/controls/radiobutton/radiobutton.js +41 -0
  123. data/js/controls/radiobutton/themes/default/radiobutton.css +69 -0
  124. data/js/controls/radiobutton/themes/default/radiobutton.html +5 -0
  125. data/js/controls/radiobutton/themes/default/radiobutton_parts1-ie6.gif +0 -0
  126. data/js/controls/radiobutton/themes/default/radiobutton_parts1.png +0 -0
  127. data/js/controls/sliders/slider/js.inc +0 -0
  128. data/js/controls/sliders/slider/slider.js +356 -0
  129. data/js/controls/sliders/slider/themes/default/hslider_tracks-ie6.gif +0 -0
  130. data/js/controls/sliders/slider/themes/default/hslider_tracks.png +0 -0
  131. data/js/controls/sliders/slider/themes/default/slider.css +108 -0
  132. data/js/controls/sliders/slider/themes/default/slider.html +5 -0
  133. data/js/controls/sliders/slider/themes/default/slider_thumbs-ie6.gif +0 -0
  134. data/js/controls/sliders/slider/themes/default/slider_thumbs.png +0 -0
  135. data/js/controls/sliders/vslider/js.inc +0 -0
  136. data/js/controls/sliders/vslider/themes/default/vslider.css +52 -0
  137. data/js/controls/sliders/vslider/themes/default/vslider.html +5 -0
  138. data/js/controls/sliders/vslider/themes/default/vslider_tracks-ie6.gif +0 -0
  139. data/js/controls/sliders/vslider/themes/default/vslider_tracks.png +0 -0
  140. data/js/controls/sliders/vslider/vslider.js +40 -0
  141. data/js/controls/stepper/js.inc +0 -0
  142. data/js/controls/stepper/stepper.js +212 -0
  143. data/js/controls/stepper/themes/default/stepper-ie6.gif +0 -0
  144. data/js/controls/stepper/themes/default/stepper.css +14 -0
  145. data/js/controls/stepper/themes/default/stepper.html +2 -0
  146. data/js/controls/stepper/themes/default/stepper.png +0 -0
  147. data/js/controls/stringview/js.inc +0 -0
  148. data/js/controls/stringview/stringview.js +49 -0
  149. data/js/controls/stringview/themes/default/stringview.css +8 -0
  150. data/js/controls/stringview/themes/default/stringview.html +1 -0
  151. data/js/controls/tab/js.inc +0 -0
  152. data/js/controls/tab/tab.js +276 -0
  153. data/js/controls/tab/themes/bright/tab.css +76 -0
  154. data/js/controls/tab/themes/bright/tab.html +6 -0
  155. data/js/controls/tab/themes/bright/tab_bg_color-ie6.gif +0 -0
  156. data/js/controls/tab/themes/bright/tab_bg_color.png +0 -0
  157. data/js/controls/tab/themes/bright/tab_border_pattern-ie6.gif +0 -0
  158. data/js/controls/tab/themes/bright/tab_border_pattern.png +0 -0
  159. data/js/controls/tab/themes/bright/tab_parts1-ie6.gif +0 -0
  160. data/js/controls/tab/themes/bright/tab_parts1.png +0 -0
  161. data/js/controls/tab/themes/default/tab.css +77 -0
  162. data/js/controls/tab/themes/default/tab.html +6 -0
  163. data/js/controls/tab/themes/default/tab_bg_color-ie6.gif +0 -0
  164. data/js/controls/tab/themes/default/tab_bg_color.png +0 -0
  165. data/js/controls/tab/themes/default/tab_border_pattern-ie6.gif +0 -0
  166. data/js/controls/tab/themes/default/tab_border_pattern.png +0 -0
  167. data/js/controls/tab/themes/default/tab_parts1-ie6.gif +0 -0
  168. data/js/controls/tab/themes/default/tab_parts1.png +0 -0
  169. data/js/controls/textarea/js.inc +0 -0
  170. data/js/controls/textarea/textarea.js +23 -0
  171. data/js/controls/textarea/themes/default/textarea.css +21 -0
  172. data/js/controls/textarea/themes/default/textarea.html +18 -0
  173. data/js/controls/textcontrol/js.inc +0 -0
  174. data/js/controls/textcontrol/textcontrol.js +372 -0
  175. data/js/controls/textcontrol/themes/default/textcontrol.css +107 -0
  176. data/js/controls/textcontrol/themes/default/textcontrol.html +18 -0
  177. data/js/controls/textcontrol/themes/default/textcontrol_parts1-ie6.gif +0 -0
  178. data/js/controls/textcontrol/themes/default/textcontrol_parts1.png +0 -0
  179. data/js/controls/textcontrol/themes/default/textcontrol_parts2-ie6.gif +0 -0
  180. data/js/controls/textcontrol/themes/default/textcontrol_parts2.png +0 -0
  181. data/js/controls/textcontrol/themes/default/textcontrol_parts3-ie6.gif +0 -0
  182. data/js/controls/textcontrol/themes/default/textcontrol_parts3.png +0 -0
  183. data/js/controls/uploader/js.inc +0 -0
  184. data/js/controls/uploader/themes/default/upload_progress.gif +0 -0
  185. data/js/controls/uploader/themes/default/uploader.css +108 -0
  186. data/js/controls/uploader/themes/default/uploader.html +27 -0
  187. data/js/controls/uploader/uploader.js +153 -0
  188. data/js/controls/validatorview/js.inc +0 -0
  189. data/js/controls/validatorview/themes/default/validator-ie6.gif +0 -0
  190. data/js/controls/validatorview/themes/default/validator.png +0 -0
  191. data/js/controls/validatorview/themes/default/validatorview.css +0 -0
  192. data/js/controls/validatorview/themes/default/validatorview.html +0 -0
  193. data/js/controls/validatorview/validatorview.js +55 -0
  194. data/js/controls/window/js.inc +0 -0
  195. data/js/controls/window/themes/default/window.css +219 -0
  196. data/js/controls/window/themes/default/window.html +17 -0
  197. data/js/controls/window/themes/default/window_bg_active-ie6.gif +0 -0
  198. data/js/controls/window/themes/default/window_bg_active.png +0 -0
  199. data/js/controls/window/themes/default/window_bg_inactive-ie6.gif +0 -0
  200. data/js/controls/window/themes/default/window_bg_inactive.png +0 -0
  201. data/js/controls/window/themes/default/window_buttons-ie6.gif +0 -0
  202. data/js/controls/window/themes/default/window_buttons.png +0 -0
  203. data/js/controls/window/themes/default/window_parts1-ie6.gif +0 -0
  204. data/js/controls/window/themes/default/window_parts1.png +0 -0
  205. data/js/controls/window/themes/default/window_parts2-ie6.gif +0 -0
  206. data/js/controls/window/themes/default/window_parts2.png +0 -0
  207. data/js/controls/window/window.js +284 -0
  208. data/js/core/class/class.js +317 -0
  209. data/js/core/class/js.inc +0 -0
  210. data/js/core/elem/elem.js +1376 -0
  211. data/js/core/elem/js.inc +0 -0
  212. data/js/core/event/event.js +1021 -0
  213. data/js/core/event/js.inc +0 -0
  214. data/js/core/iefix/ie_css_element.htc +5 -0
  215. data/js/core/iefix/ie_css_style.htc +5 -0
  216. data/js/core/iefix/iefix.js +359 -0
  217. data/js/core/iefix/js.inc +0 -0
  218. data/js/debugg/debugg.js +43 -0
  219. data/js/debugg/js.inc +0 -0
  220. data/js/foundation/application/application.js +209 -0
  221. data/js/foundation/application/js.inc +0 -0
  222. data/js/foundation/control/control.js +342 -0
  223. data/js/foundation/control/controldefaults/controldefaults.js +59 -0
  224. data/js/foundation/control/controldefaults/js.inc +0 -0
  225. data/js/foundation/control/dummyvalue/dummyvalue.js +50 -0
  226. data/js/foundation/control/dummyvalue/js.inc +0 -0
  227. data/js/foundation/control/dyncontrol/dyncontrol.js +494 -0
  228. data/js/foundation/control/dyncontrol/js.inc +0 -0
  229. data/js/foundation/control/dyncontrol/themes/default/dyncontrol.css +0 -0
  230. data/js/foundation/control/dyncontrol/themes/default/dyncontrol.html +0 -0
  231. data/js/foundation/control/eventresponder/eventresponder.js +713 -0
  232. data/js/foundation/control/eventresponder/js.inc +0 -0
  233. data/js/foundation/control/js.inc +0 -0
  234. data/js/foundation/control/valueresponder/js.inc +0 -0
  235. data/js/foundation/control/valueresponder/valueresponder.js +77 -0
  236. data/js/foundation/geom/point/js.inc +0 -0
  237. data/js/foundation/geom/point/point.js +202 -0
  238. data/js/foundation/geom/rect/js.inc +0 -0
  239. data/js/foundation/geom/rect/rect.js +610 -0
  240. data/js/foundation/json_renderer/js.inc +0 -0
  241. data/js/foundation/json_renderer/json_renderer.js +231 -0
  242. data/js/foundation/system/js.inc +0 -0
  243. data/js/foundation/system/system.js +369 -0
  244. data/js/foundation/thememanager/js.inc +0 -0
  245. data/js/foundation/thememanager/thememanager.js +387 -0
  246. data/js/foundation/view/js.inc +0 -0
  247. data/js/foundation/view/markupview/js.inc +0 -0
  248. data/js/foundation/view/markupview/markupview.js +113 -0
  249. data/js/foundation/view/morphanimation/js.inc +0 -0
  250. data/js/foundation/view/morphanimation/morphanimation.js +236 -0
  251. data/js/foundation/view/view.js +1804 -0
  252. data/js/foundation/view/viewdefaults/js.inc +0 -0
  253. data/js/foundation/view/viewdefaults/viewdefaults.js +25 -0
  254. data/js/views/centerview/centerview.js +45 -0
  255. data/js/views/centerview/js.inc +0 -0
  256. data/js/views/inlineview/inlineview.js +14 -0
  257. data/js/views/inlineview/js.inc +0 -0
  258. data/js/views/scrollview/js.inc +0 -0
  259. data/js/views/scrollview/scrollview.js +39 -0
  260. data/lib/conf/default.rb +220 -0
  261. data/lib/conf/wizard.rb +303 -0
  262. data/lib/daemon/daemon.rb +293 -0
  263. data/lib/http/broker.rb +102 -0
  264. data/lib/http/rackup.rb +88 -0
  265. data/lib/http/request.rb +69 -0
  266. data/lib/http/response.rb +63 -0
  267. data/lib/plugins/gui_plugin.rb +129 -0
  268. data/lib/plugins/guiparser.rb +114 -0
  269. data/lib/plugins/plugin.rb +652 -0
  270. data/lib/plugins/plugin_plugins.rb +47 -0
  271. data/lib/plugins/plugin_sqlite_db.rb +72 -0
  272. data/lib/plugins/plugin_util.rb +96 -0
  273. data/lib/plugins/pluginmanager.rb +517 -0
  274. data/lib/plugins/servlet.rb +69 -0
  275. data/lib/session/msg.rb +291 -0
  276. data/lib/session/sessionmanager.rb +491 -0
  277. data/lib/session/sessionstorage.rb +314 -0
  278. data/lib/transporter/transporter.rb +254 -0
  279. data/lib/util/gzstring.rb +5 -0
  280. data/lib/values/hvalue.rb +323 -0
  281. data/lib/values/valuemanager.rb +152 -0
  282. data/plugins/client_pkg/client_pkg.rb +186 -0
  283. data/plugins/client_pkg/info.yaml +25 -0
  284. data/plugins/client_pkg/lib/client_pkg_build.rb +569 -0
  285. data/plugins/client_pkg/lib/client_pkg_cache.rb +50 -0
  286. data/plugins/client_pkg/lib/client_pkg_serve.rb +210 -0
  287. data/plugins/client_pkg/log/build_log +0 -0
  288. data/plugins/index_html/img/loading.gif +0 -0
  289. data/plugins/index_html/img/riassence.gif +0 -0
  290. data/plugins/index_html/index_html.rb +150 -0
  291. data/plugins/index_html/tmpl/index.html +22 -0
  292. data/plugins/index_html/tmpl/startup_index.html +29 -0
  293. data/plugins/legacy/disabled +0 -0
  294. data/plugins/legacy/disabled- +0 -0
  295. data/plugins/legacy/info.yaml +22 -0
  296. data/plugins/legacy/legacy.rb +15 -0
  297. data/plugins/main/js/riassence_ns.js +87 -0
  298. data/plugins/main/main.rb +234 -0
  299. data/plugins/main/values.yaml +8 -0
  300. data/plugins/ticketservices/lib/common.rb +300 -0
  301. data/plugins/ticketservices/lib/favicon.rb +38 -0
  302. data/plugins/ticketservices/lib/file.rb +58 -0
  303. data/plugins/ticketservices/lib/img.rb +50 -0
  304. data/plugins/ticketservices/lib/objblob.rb +66 -0
  305. data/plugins/ticketservices/lib/rsrc.rb +34 -0
  306. data/plugins/ticketservices/lib/upload.rb +206 -0
  307. data/plugins/ticketservices/ticketservices.rb +268 -0
  308. data/var/db/.git_include +0 -0
  309. data/var/log/.git_include +0 -0
  310. data/var/run/.git_include +0 -0
  311. metadata +390 -0
File without changes
File without changes
@@ -0,0 +1,65 @@
1
+ /* Riassence Framework
2
+ * Copyright 2009 Riassence Inc.
3
+ * http://riassence.com/
4
+ *
5
+ * You should have received a copy of the GNU General Public License along
6
+ * with this software package. If not, contact licensing@riassence.com
7
+ */
8
+
9
+
10
+ /*** = Description
11
+ ** HListItems is uses an array-packed list of hash objects as its value.
12
+ ** Each item in the array should have a 'label' and a 'value' key.
13
+ ** The 'label' key of each item is used as the label for the HRadiobutton in the list.
14
+ ** The 'value' key of each item is the value used for the output.
15
+ ** The parent object of a HListItem needs to be a compatible hash, like HRadiobuttonList.
16
+ ***/
17
+ HListItems = HValueResponder.extend({
18
+
19
+ constructor: function( _rect, _parent, _options ){
20
+ this.parent = _parent;
21
+ if (_options instanceof Object) {
22
+ if (_options['valueObj'] !== undefined) {
23
+ _options.valueObj.bind( this );
24
+ }
25
+ else if(_options['value'] !== undefined) {
26
+ this.value = _options.value;
27
+ this.refresh();
28
+ }
29
+ }
30
+ },
31
+ _warningMessage: function(_messageText){
32
+ console.log("Warning; HListItems: "+_messageText);
33
+ },
34
+
35
+ /** = Description
36
+ * Iterates through this.value array and calls
37
+ * the setListItems function of the parent class.
38
+ *
39
+ **/
40
+ refresh: function(){
41
+ if ( this.value instanceof Array ) {
42
+ var _listItems = [],
43
+ _row,
44
+ _label, _value,
45
+ i = 0;
46
+ for ( ; i < this.value.length ; i++ ){
47
+ _row = this.value[i];
48
+ if ( _row instanceof Object ) {
49
+ _label = _row['label'];
50
+ _value = _row['value'];
51
+ if ( _label === undefined || _value === undefined ){
52
+ this._warningMessage( "The value or label of row "+_row+" is undefined (ignored)" );
53
+ }
54
+ _listItems.push( [_value, _label] );
55
+ }
56
+ else {
57
+ this._warningMessage( "The row "+_row+" is not an object (ignored)" );
58
+ }
59
+ }
60
+ this.parent.setListItems( _listItems );
61
+ }
62
+ }
63
+ });
64
+
65
+
File without changes
@@ -0,0 +1,126 @@
1
+ /* Riassence Framework
2
+ * Copyright 2009 Riassence Inc.
3
+ * http://riassence.com/
4
+ *
5
+ * You should have received a copy of the GNU General Public License along
6
+ * with this software package. If not, contact licensing@riassence.com
7
+ */
8
+
9
+ /*** = Description
10
+ ** HRadiobuttonList expects the setListItems to be set. See HListItems.
11
+ ** The value of the instance is the selected key in the listItems.
12
+ ***/
13
+ HRadioButtonList = HControl.extend({
14
+ drawSubviews: function(){
15
+ this.setStyle('border','1px solid #999');
16
+ this.setStyle('overflow-y','auto');
17
+ },
18
+ listItems: [],
19
+ listItemViews: [],
20
+
21
+ /** = Description
22
+ * Setter function for listItems and listItemViews. Destroys
23
+ * the old HRadiabuttons before creating the new ones based on the
24
+ * listItems given as an parameter.
25
+ *
26
+ * = Parameters
27
+ * +_listItems+:: listItems is an array-packed array, where each index in the
28
+ * surrounding array contains a [ value, label ] pair.
29
+ * The value is mapped to the value of the HRadiobuttonList
30
+ * instance when its HRadiobutton instance is selected.
31
+ *
32
+ **/
33
+ setListItems: function(_listItems){
34
+ var _listItem,
35
+ _value,
36
+ _label,
37
+ _radioButton,
38
+ i = 0;
39
+ for ( ; i < this.listItemViews.length; i++ ) {
40
+ try {
41
+ this.listItemViews[i].die();
42
+ }
43
+ catch(e) {
44
+ console.log('HRadiobuttonList, setListItems item destruction error: ',e);
45
+ }
46
+ }
47
+ this.listItems = _listItems;
48
+ this.listItemViews = [];
49
+ for ( i = 0 ; i < _listItems.length; i++ ){
50
+ _listItem = _listItems[i];
51
+ _value = _listItem[0];
52
+ _label = _listItem[1];
53
+ _radioButton = HRadiobutton.nu(
54
+ [ 4, (i*23)+4, null, 23, 4, null ],
55
+ this, {
56
+ label: _label
57
+ }
58
+ );
59
+ this.listItemViews[i] = _radioButton;
60
+ }
61
+ this.refreshValue();
62
+ },
63
+
64
+ /** = Description
65
+ * Destructor. Sets listItems and listItemViews to null and initiates
66
+ * destructor for radioButtonIndexValue.
67
+ *
68
+ **/
69
+ die: function(){
70
+ this.listItems = null;
71
+ this.listItemViews = null;
72
+ this.radioButtonIndexValue.die();
73
+ this.base();
74
+ },
75
+ radioButtonIndexValue: false,
76
+ radioButtonResponder: false,
77
+
78
+ /** = Description
79
+ *
80
+ *
81
+ **/
82
+ RadioButtonIndexResponder: HValueResponder.extend({
83
+ constructor: function( _parent, _valueObj ){
84
+ this.parent = _parent;
85
+ },
86
+ refresh: function(){
87
+ var _listItems = this.parent.listItems;
88
+ if(_listItems[ this.value ] !== undefined){
89
+ this.parent.setValue( _listItems[ this.value ][0] );
90
+ }
91
+ }
92
+ }),
93
+ refreshValue: function(){
94
+ var _value = this.value;
95
+ if ( this.listItems.length !== 0 && this['valueMatrix'] !== undefined ) {
96
+ if ( this.radioButtonResponder === false ){
97
+ this.radioButtonIndexValue = HValue.nu( false, 0 );
98
+ this.radioButtonIndexValue.bind( this.valueMatrix );
99
+ this.radioButtonResponder = this.RadioButtonIndexResponder.nu( this );
100
+ this.radioButtonIndexValue.bind( this.radioButtonResponder );
101
+ }
102
+ for ( var i = 0; i < this.listItems.length; i++ ) {
103
+ if ( this.listItems[i][0] === _value ) {
104
+ this.radioButtonResponder.setValue( -1 );
105
+ this.radioButtonResponder.setValue( i );
106
+ break;
107
+ }
108
+ }
109
+ }
110
+ }
111
+ });
112
+
113
+ HRadiobuttonList = HRadioButtonList;
114
+
115
+
116
+
117
+
118
+
119
+
120
+
121
+
122
+
123
+
124
+
125
+
126
+
File without changes
@@ -0,0 +1,22 @@
1
+ /* Riassence Framework
2
+ * Copyright 2006 Riassence Inc.
3
+ * http://riassence.com/
4
+ *
5
+ * You should have received a copy of the GNU General Public License along
6
+ * with this software package. If not, contact licensing@riassence.com
7
+ */
8
+
9
+ /*** = Description
10
+ ** Just like HTextControl, but the typed characters are not shown.
11
+ **
12
+ ** = Instance variables
13
+ ** +type+:: '[HPasswordControl]'
14
+ ** +value+:: The string that is currently held by this object.
15
+ **
16
+ ***/
17
+ HPasswordControl = HTextControl.extend({
18
+
19
+ componentName: 'passwordcontrol'
20
+
21
+ });
22
+
@@ -0,0 +1,18 @@
1
+ <div class="textcontrol_bg"></div>
2
+
3
+ <div class="textcontrol_n"></div>
4
+ <div class="textcontrol_s"></div>
5
+ <div class="textcontrol_w"></div>
6
+ <div class="textcontrol_e"></div>
7
+
8
+ <div class="textcontrol_nw"></div>
9
+ <div class="textcontrol_ne"></div>
10
+ <div class="textcontrol_se"></div>
11
+ <div class="textcontrol_sw"></div>
12
+
13
+ <div id="label#{_ID}" title="#{this.label}" class="textcontrol_input_parent">
14
+ <input type="password" class="textcontrol_input" #{this.enabled?'':'disabled'}
15
+ onfocus="HSystem.views[#{this.viewId}].textFocus();"
16
+ onblur="HSystem.views[#{this.viewId}].textBlur();"
17
+ id="value#{_ID}" value="#{this.value}" />
18
+ </div>
File without changes
@@ -0,0 +1,36 @@
1
+ /* Riassence Framework
2
+ * Copyright 2006 Riassence Inc.
3
+ * http://riassence.com/
4
+ *
5
+ * You should have received a copy of the GNU General Public License along
6
+ * with this software package. If not, contact licensing@riassence.com
7
+ */
8
+
9
+ /*** = Description
10
+ ** HProgressBar is a control unit used to convey the progress of a task,
11
+ ** such as a download or file transfer. In other words, it is a component
12
+ ** indicating a percentage of a total task has completed.
13
+ **
14
+ ** Use the maxValue to define the point of progress at the end and use value
15
+ ** to define the point of progress.
16
+ **
17
+ ***/
18
+ HProgressBar = HControl.extend({
19
+ componentName: "progressbar",
20
+
21
+ /** The amount of pixels the theme insets the width of the progress bar **/
22
+ themeWidthInset: 2,
23
+
24
+ /** Sets the width of the progress bar when the value changes. **/
25
+ refreshValue: function(){
26
+ if( this.drawn && this.markupElemIds.value ){
27
+ var _visibleWidth = this.rect.width-this.themeWidthInset,
28
+ _progressWidth = Math.round(_visibleWidth * this.value);
29
+ this.setStyleOfPart('value','width',_progressWidth+'px');
30
+ }
31
+ },
32
+ onIdle: function(){
33
+ this.base();
34
+ this.refreshValue();
35
+ }
36
+ });
@@ -0,0 +1,16 @@
1
+ .progressbar {
2
+ cursor: wait;
3
+ position: absolute;
4
+ left: 0px; top: 0px; right: 0px; bottom: 1px;
5
+ border: 1px solid #999;
6
+ background-color: #ccc;
7
+ }
8
+ .progressbar .progress {
9
+ position: absolute;
10
+ left: 0px; top: 0px;
11
+ width: 50px; bottom: 0px;
12
+ background-color: #333;
13
+ }
14
+ .disabled .progressbar {
15
+ opacity: 0.75;
16
+ }
@@ -0,0 +1,2 @@
1
+ <div class="progressbar"
2
+ ><div class="progress" id="value#{ _ID }"></div></div>
File without changes
@@ -0,0 +1,43 @@
1
+ /* Riassence Framework
2
+ * Copyright 2006 Riassence Inc.
3
+ * http://riassence.com/
4
+ *
5
+ * You should have received a copy of the GNU General Public License along
6
+ * with this software package. If not, contact licensing@riassence.com
7
+ */
8
+
9
+ /*** = Description
10
+ ** A progress indicator is the indeterminate progress bar, which is used in
11
+ ** situations where the extent of the task is unknown or the progress of
12
+ ** the task can not be determined in a way that could be expressed as a
13
+ ** percentage. This bar uses motion or some other indicator to show that
14
+ ** progress is taking place, rather than using the size of the filled portion
15
+ ** to show the total amount of progress.
16
+ ***/
17
+ HProgressIndicator = HView.extend({
18
+ _indicator: null,
19
+ _animDirection: 0,
20
+ drawSubviews: function(){
21
+ var _this = this;
22
+ _this.setStyle( 'border', '1px solid #999' );
23
+ _this.setStyle( 'background-color', '#ccc' );
24
+ var _height = _this.rect.height,
25
+ _visibleWidth = ELEM.getVisibleSize( _this.elemId )[0],
26
+ _width = (_visibleWidth===0)?_this.rect.width:_visibleWidth;
27
+ _width -= 2;
28
+ _this['_rect'+0] = HRect.nu( 0,0,_height,_height );
29
+ _this['_rect'+1] = HRect.nu( _width-_height, 0, _width, _height );
30
+ _this._indicator = HView.nu( HRect.nu( _this['_rect'+0] ), _this );
31
+ _this._indicator.setStyle('background-color','#333');
32
+ _this._indicator.onAnimationEnd = function(){
33
+ this.parent._toggleDirection();
34
+ };
35
+ _this._toggleDirection();
36
+ },
37
+ _toggleDirection: function(){
38
+ this._animDirection = this._animDirection===1?0:1;
39
+ var _directionRect = HRect.nu( this['_rect'+this._animDirection] );
40
+ this._indicator.animateTo(_directionRect);
41
+ }
42
+ });
43
+
File without changes
@@ -0,0 +1,41 @@
1
+ /* Riassence Framework
2
+ * Copyright 2008 Riassence Inc.
3
+ * http://riassence.com/
4
+ *
5
+ * You should have received a copy of the GNU General Public License along
6
+ * with this software package. If not, contact licensing@riassence.com
7
+ */
8
+
9
+ /*** = Description
10
+ ** A HRadioButton is a labeled, two-state button that's displayed in a group along
11
+ ** with other similar buttons. The button itself is a round icon that has a filled
12
+ ** center when the HRadioButton is turned on, and is empty when it's off.
13
+ ** The label appears next to the icon.
14
+ **
15
+ ** Only one radio button in the group can be on at a time; when the user clicks a
16
+ ** button to turn it on, the button that's currently on is turned off. One button
17
+ ** in the group must be on at all times; the user can turn a button off only by
18
+ ** turning another one on. The button that's on has a value of 1 (H_CONTROL_ON);
19
+ ** the others have a value of 0 (H_CONTROL_OFF).
20
+ **
21
+ ** The HRadioButton class handles the interaction between radio buttons in the
22
+ ** following way: A direct user action can only turn on a radio button, not turn
23
+ ** it off. However, when the user turns a button on, the HRadioButton object turns
24
+ ** off all sibling HRadioButtons—that is, all HRadioButtons that have the same
25
+ ** parent as the one that was turned on.
26
+ **
27
+ ** This means that a parent view should have no more than one
28
+ ** group of radio buttons among its children. Each set of radio buttons
29
+ ** should be assigned a separate parent—perhaps an empty HView that
30
+ ** simply contains the radio buttons and does no drawing of its own.
31
+ ***/
32
+
33
+ HRadioButton = HCheckbox.extend(
34
+ HValueMatrixComponentExtension
35
+ );
36
+ HRadioButton.prototype.componentName = 'radiobutton';
37
+
38
+
39
+ // Backwards compatibility
40
+ HRadiobutton = HRadioButton;
41
+
@@ -0,0 +1,69 @@
1
+ .radiobutton_control,
2
+ .radiobutton_state,
3
+ .radiobutton_label,
4
+ .radiobutton_antiselect {
5
+ position: absolute; height: 24px;
6
+ }
7
+ .radiobutton_control {
8
+ left: 0px; top: 0px; right: 0px;
9
+ cursor: pointer;
10
+ }
11
+ .disabled > .radiobutton_control {
12
+ cursor: default;
13
+ }
14
+ .radiobutton_state {
15
+ left: 0px; top: 0px; width: 24px;
16
+ background-repeat: no-repeat;
17
+ background-position: -24px 0px;
18
+ background-image: #{this.getCssFilePath('radiobutton_parts1.png')};
19
+ }
20
+
21
+ #{BROWSER_TYPE.ie6?'.enabled .unchecked .radiobutton_state':'.enabled > .unchecked > .radiobutton_state'} {
22
+ background-position: -24px 0px;
23
+ }
24
+ #{BROWSER_TYPE.ie6?'.enabled .unchecked:hover .radiobutton_state':'.enabled > .unchecked:hover > .radiobutton_state'} {
25
+ background-position: -24px -24px;
26
+ }
27
+ #{BROWSER_TYPE.ie6?'.enabled .unchecked:active .radiobutton_state':'.enabled > .unchecked:active > .radiobutton_state'} {
28
+ background-position: -24px -48px;
29
+ }
30
+
31
+ #{BROWSER_TYPE.ie6?'.enabled .checked .radiobutton_state':'.enabled > .checked > .radiobutton_state'} {
32
+ background-position: 0px 0px;
33
+ }
34
+ #{BROWSER_TYPE.ie6?'.enabled .checked:hover .radiobutton_state':'.enabled > .checked:hover > .radiobutton_state'} {
35
+ background-position: 0px -24px;
36
+ }
37
+ #{BROWSER_TYPE.ie6?'.enabled .checked:active .radiobutton_state':'.enabled > .checked:active > .radiobutton_state'} {
38
+ background-position: 0px -48px;
39
+ }
40
+
41
+ #{BROWSER_TYPE.ie6?'.disabled .unchecked .radiobutton_state':'.disabled > .unchecked > .radiobutton_state'} {
42
+ background-position: -24px -72px;
43
+ }
44
+ #{BROWSER_TYPE.ie6?'.disabled .checked .radiobutton_state':'.disabled > .checked > .radiobutton_state'} {
45
+ background-position: 0px -72px;
46
+ }
47
+
48
+ .radiobutton_label {
49
+ left: 24px; right: 0px; top: 0px;
50
+ height: 20px; line-height: 21px;
51
+ text-align: left; vertical-align: middle;
52
+ font-family: Arial, sans-serif;
53
+ font-size: 12px;
54
+ color: #333;
55
+ }
56
+ #{BROWSER_TYPE.ie6?'.disabled .radiobutton_control .radiobutton_label':'.disabled > .radiobutton_control > .radiobutton_label'} {
57
+ color: #999;
58
+ }
59
+ #{BROWSER_TYPE.ie6?'.enabled .radiobutton_control:hover .radiobutton_label':'.enabled > .radiobutton_control:hover > .radiobutton_label'} {
60
+ color: #000;
61
+ }
62
+ #{BROWSER_TYPE.ie6?'.enabled .radiobutton_control:active .radiobutton_label':'.enabled > .radiobutton_control:active > .radiobutton_label'} {
63
+ color: #000;
64
+ }
65
+
66
+ .radiobutton_antiselect {
67
+ left: 0px; top: 0px; right: 0px;
68
+ }
69
+