rsence 2.1.11 → 2.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (216) hide show
  1. data/INSTALL.rdoc +5 -3
  2. data/README.rdoc +23 -22
  3. data/VERSION +1 -1
  4. data/conf/default_conf.yaml +65 -29
  5. data/conf/rsence_command_strings.yaml +101 -71
  6. data/js/comm/autosync/autosync.js +3 -3
  7. data/js/comm/jsloader/jsloader.js +16 -3
  8. data/js/comm/queue/queue.js +1 -1
  9. data/js/comm/transporter/transporter.js +106 -83
  10. data/js/comm/values/values.js +8 -2
  11. data/js/controls/button/button.js +9 -4
  12. data/js/controls/button/themes/default/button.css +1 -1
  13. data/js/controls/checkbox/themes/default/checkbox.css +1 -1
  14. data/js/controls/dialogs/sheet/sheet.js +27 -18
  15. data/js/controls/radiobutton/themes/default/radiobutton.css +1 -1
  16. data/js/controls/searchfield/searchfield.coffee +2 -0
  17. data/js/controls/searchfield/themes/default/searchfield.css +96 -0
  18. data/js/controls/searchfield/themes/default/searchfield.html +12 -0
  19. data/js/controls/searchfield/themes/default/searchfield_parts1-ie6.gif +0 -0
  20. data/js/controls/searchfield/themes/default/searchfield_parts1.png +0 -0
  21. data/js/controls/sliders/slider/slider.js +7 -1
  22. data/js/controls/stepper/stepper.js +6 -1
  23. data/js/controls/stringview/stringview.js +50 -39
  24. data/js/controls/tab/tab.js +103 -7
  25. data/js/controls/tab/themes/default/tab.css +2 -0
  26. data/js/controls/textarea/themes/default/textarea.css +4 -0
  27. data/js/controls/textcontrol/textcontrol.js +32 -2
  28. data/js/controls/textcontrol/themes/default/textcontrol.css +17 -2
  29. data/js/controls/uploader/themes/default/uploader.css +3 -3
  30. data/js/controls/uploader/themes/default/uploader.html +1 -1
  31. data/js/controls/uploader/uploader.coffee +110 -0
  32. data/js/controls/window/themes/default/window.css +28 -5
  33. data/js/controls/window/themes/default/window.html +2 -0
  34. data/js/controls/window/window.js +5 -1
  35. data/js/core/class/class.js +22 -4
  36. data/js/core/elem/elem.coffee +816 -0
  37. data/js/core/event/event.js +2 -2
  38. data/js/core/rsence_ns/rsence_ns.coffee +31 -0
  39. data/js/core/rsence_ns/rsence_ns.js +6 -6
  40. data/js/datetime/calendar/calendar.coffee +307 -0
  41. data/js/datetime/calendar/themes/default/calendar.css +90 -9
  42. data/js/datetime/calendar/themes/default/calendar.html +11 -0
  43. data/js/datetime/calendar/themes/default/calendar_bg-ie6.gif +0 -0
  44. data/js/datetime/calendar/themes/default/calendar_bg.png +0 -0
  45. data/js/datetime/calendar/themes/default/calendar_parts1-ie6.gif +0 -0
  46. data/js/datetime/calendar/themes/default/calendar_parts1.png +0 -0
  47. data/js/datetime/calendar/themes/default/calendar_parts2-ie6.gif +0 -0
  48. data/js/datetime/calendar/themes/default/calendar_parts2.png +0 -0
  49. data/js/datetime/datetimepicker/datetimepicker.js +217 -0
  50. data/js/datetime/datetimevalue/datetimevalue.js +22 -5
  51. data/js/datetime/timesheet/themes/default/timesheet.css +51 -22
  52. data/js/datetime/timesheet/themes/default/timesheet.html +4 -2
  53. data/js/datetime/timesheet/timesheet.js +782 -192
  54. data/js/datetime/timesheet_item/themes/default/timesheet_item.css +42 -11
  55. data/js/datetime/timesheet_item/themes/default/timesheet_item.html +4 -2
  56. data/js/datetime/timesheet_item/themes/default/timesheet_item_icons.png +0 -0
  57. data/js/datetime/timesheet_item/timesheet_item.js +158 -254
  58. data/js/datetime/timesheet_item_edit/timesheet_item_edit.js +0 -274
  59. data/js/foundation/application/application.js +52 -9
  60. data/js/foundation/control/eventresponder/eventresponder.js +7 -4
  61. data/js/foundation/control/valueaction/valueaction.js +71 -0
  62. data/js/foundation/eventmanager/eventmanager.js +71 -33
  63. data/js/foundation/geom/rect/rect.js +39 -7
  64. data/js/foundation/json_renderer/json_renderer.js +278 -62
  65. data/js/foundation/locale_settings/locale_settings.js +131 -0
  66. data/js/foundation/system/system.js +40 -13
  67. data/js/foundation/thememanager/thememanager.js +21 -0
  68. data/js/foundation/view/markupview/markupview.js +12 -12
  69. data/js/foundation/view/view.js +221 -27
  70. data/js/graphics/svgcontrol/svgcontrol.js +400 -0
  71. data/js/lists/checkboxlist/checkboxlist.js +18 -7
  72. data/js/lists/listitems/listitems.js +52 -38
  73. data/js/lists/radiobuttonlist/radiobuttonlist.js +23 -7
  74. data/js/menus/menuitem/menuitem.js +5 -0
  75. data/js/menus/menuitem/themes/default/menuitem.css +45 -0
  76. data/js/menus/menuitem/themes/default/menuitem.html +4 -0
  77. data/js/menus/minimenu/minimenu.js +47 -16
  78. data/js/menus/minimenuitem/minimenuitem.js +62 -0
  79. data/js/menus/{minimenu/minimenuitem → minimenuitem}/themes/default/minimenuitem.css +2 -2
  80. data/js/menus/{minimenu/minimenuitem → minimenuitem}/themes/default/minimenuitem.html +0 -0
  81. data/js/menus/{minimenu/minimenuitem → minimenuitem}/themes/default/minimenuitem_checkmark.png +0 -0
  82. data/js/menus/popupmenu/popupmenu.js +14 -0
  83. data/js/menus/popupmenu/themes/default/popupmenu.css +65 -0
  84. data/js/menus/popupmenu/themes/default/popupmenu.html +7 -0
  85. data/js/menus/popupmenu/themes/default/popupmenu.png +0 -0
  86. data/js/no_pkg/no_pkg.js +2 -0
  87. data/js/util/reloadapp/reloadapp.js +1 -1
  88. data/js/views/scrollview/scrollview.js +6 -0
  89. data/lib/rsence.rb +136 -3
  90. data/lib/rsence/argv.rb +218 -0
  91. data/lib/rsence/argv/argv_util.rb +58 -0
  92. data/lib/rsence/argv/env_check.rb +58 -0
  93. data/lib/rsence/argv/help_argv.rb +15 -0
  94. data/lib/rsence/argv/initenv_argv.rb +218 -0
  95. data/lib/rsence/argv/save_argv.rb +92 -0
  96. data/lib/rsence/argv/startup_argv.rb +118 -0
  97. data/lib/rsence/argv/status_argv.rb +132 -0
  98. data/lib/rsence/argv/test_port.rb +32 -0
  99. data/lib/{daemon → rsence}/daemon.rb +67 -23
  100. data/lib/{conf/default.rb → rsence/default_config.rb} +18 -10
  101. data/lib/{plugins → rsence}/dependencies.rb +0 -0
  102. data/lib/{util → rsence}/gzstring.rb +0 -0
  103. data/lib/rsence/http.rb +3 -0
  104. data/lib/{http → rsence/http}/broker.rb +106 -19
  105. data/lib/{http → rsence/http}/rackup.rb +0 -0
  106. data/lib/{http → rsence/http}/request.rb +0 -4
  107. data/lib/{http → rsence/http}/response.rb +0 -1
  108. data/lib/{session → rsence}/msg.rb +17 -1
  109. data/lib/{plugins → rsence}/pluginmanager.rb +29 -12
  110. data/lib/{plugins → rsence}/plugins.rb +7 -7
  111. data/lib/{plugins → rsence/plugins}/gui_plugin.rb +8 -3
  112. data/lib/{plugins → rsence/plugins}/guiparser.rb +9 -6
  113. data/lib/{plugins → rsence/plugins}/plugin.rb +23 -4
  114. data/lib/{plugins → rsence/plugins}/plugin_base.rb +11 -1
  115. data/lib/{plugins → rsence/plugins}/plugin_plugins.rb +2 -2
  116. data/lib/{plugins → rsence/plugins}/plugin_sqlite_db.rb +0 -0
  117. data/lib/{plugins → rsence/plugins}/servlet.rb +0 -0
  118. data/lib/{session → rsence}/sessionmanager.rb +101 -39
  119. data/lib/{session → rsence}/sessionstorage.rb +30 -16
  120. data/lib/{daemon → rsence}/sigcomm.rb +0 -0
  121. data/lib/{transporter → rsence}/transporter.rb +13 -11
  122. data/lib/{values/hvalue.rb → rsence/value.rb} +6 -1
  123. data/lib/{values → rsence}/valuemanager.rb +1 -1
  124. data/plugins/client_pkg/client_pkg.rb +14 -4
  125. data/plugins/client_pkg/info.yaml +2 -2
  126. data/plugins/client_pkg/lib/client_pkg_build.rb +145 -45
  127. data/plugins/client_pkg/lib/client_pkg_cache.rb +1 -1
  128. data/plugins/client_pkg/lib/client_pkg_serve.rb +1 -1
  129. data/plugins/main/main.rb +43 -3
  130. data/plugins/main/tmpl/index.html +2 -10
  131. data/plugins/main/values.yaml +3 -1
  132. data/plugins/ticket/lib/common.rb +6 -3
  133. data/plugins/ticket/ticket.rb +11 -3
  134. metadata +144 -174
  135. data/js/comm/autosync/js.inc +0 -0
  136. data/js/comm/js.inc +0 -0
  137. data/js/comm/jsloader/js.inc +0 -0
  138. data/js/comm/queue/js.inc +0 -0
  139. data/js/comm/session/js.inc +0 -0
  140. data/js/comm/sessionwatcher/js.inc +0 -0
  141. data/js/comm/transporter/js.inc +0 -0
  142. data/js/comm/urlresponder/js.inc +0 -0
  143. data/js/comm/values/js.inc +0 -0
  144. data/js/controls/button/js.inc +0 -0
  145. data/js/controls/checkbox/js.inc +0 -0
  146. data/js/controls/dialogs/alert_sheet/js.inc +0 -0
  147. data/js/controls/dialogs/confirm_sheet/js.inc +0 -0
  148. data/js/controls/dialogs/sheet/js.inc +0 -0
  149. data/js/controls/imageview/js.inc +0 -0
  150. data/js/controls/passwordcontrol/js.inc +0 -0
  151. data/js/controls/progress/progressbar/js.inc +0 -0
  152. data/js/controls/progress/progressindicator/js.inc +0 -0
  153. data/js/controls/radiobutton/js.inc +0 -0
  154. data/js/controls/sliders/slider/js.inc +0 -0
  155. data/js/controls/sliders/vslider/js.inc +0 -0
  156. data/js/controls/stepper/js.inc +0 -0
  157. data/js/controls/stringview/js.inc +0 -0
  158. data/js/controls/tab/js.inc +0 -0
  159. data/js/controls/textarea/js.inc +0 -0
  160. data/js/controls/textcontrol/js.inc +0 -0
  161. data/js/controls/uploader/js.inc +0 -0
  162. data/js/controls/uploader/uploader.js +0 -154
  163. data/js/controls/validatorview/js.inc +0 -0
  164. data/js/controls/window/js.inc +0 -0
  165. data/js/core/class/js.inc +0 -0
  166. data/js/core/elem/elem.js +0 -1325
  167. data/js/core/elem/js.inc +0 -0
  168. data/js/core/event/js.inc +0 -0
  169. data/js/core/iefix/js.inc +0 -0
  170. data/js/core/rsence_ns/js.inc +0 -0
  171. data/js/datetime/calendar/calendar.js +0 -198
  172. data/js/datetime/calendar/js.inc +0 -0
  173. data/js/datetime/datetimevalue/js.inc +0 -0
  174. data/js/datetime/timesheet/js.inc +0 -0
  175. data/js/datetime/timesheet/old_timesheet.js +0 -292
  176. data/js/datetime/timesheet/themes/default/old_timesheet.css +0 -30
  177. data/js/datetime/timesheet/themes/default/old_timesheet.html +0 -2
  178. data/js/datetime/timesheet_item/js.inc +0 -0
  179. data/js/datetime/timesheet_item/old_timesheet_item.js +0 -308
  180. data/js/datetime/timesheet_item/themes/default/old_timesheet_item.css +0 -42
  181. data/js/datetime/timesheet_item/themes/default/old_timesheet_item.html +0 -8
  182. data/js/datetime/timesheet_item_edit/js.inc +0 -0
  183. data/js/datetime/timesheet_item_edit/old_timesheet_item_edit.js +0 -274
  184. data/js/foundation/application/js.inc +0 -0
  185. data/js/foundation/control/controldefaults/js.inc +0 -0
  186. data/js/foundation/control/dummyvalue/js.inc +0 -0
  187. data/js/foundation/control/dyncontrol/js.inc +0 -0
  188. data/js/foundation/control/eventresponder/js.inc +0 -0
  189. data/js/foundation/control/js.inc +0 -0
  190. data/js/foundation/control/valuematrix/js.inc +0 -0
  191. data/js/foundation/control/valueresponder/js.inc +0 -0
  192. data/js/foundation/eventmanager/js.inc +0 -0
  193. data/js/foundation/geom/point/js.inc +0 -0
  194. data/js/foundation/geom/rect/js.inc +0 -0
  195. data/js/foundation/json_renderer/js.inc +0 -0
  196. data/js/foundation/system/js.inc +0 -0
  197. data/js/foundation/thememanager/js.inc +0 -0
  198. data/js/foundation/value/js.inc +0 -0
  199. data/js/foundation/view/js.inc +0 -0
  200. data/js/foundation/view/markupview/js.inc +0 -0
  201. data/js/foundation/view/morphanimation/js.inc +0 -0
  202. data/js/foundation/view/viewdefaults/js.inc +0 -0
  203. data/js/lists/checkboxlist/js.inc +0 -0
  204. data/js/lists/listitems/js.inc +0 -0
  205. data/js/lists/propertylist/js.inc +0 -0
  206. data/js/lists/propertylist/propertylisteditor/js.inc +0 -0
  207. data/js/lists/radiobuttonlist/js.inc +0 -0
  208. data/js/menus/minimenu/js.inc +0 -0
  209. data/js/menus/minimenu/minimenuitem/js.inc +0 -0
  210. data/js/menus/minimenu/minimenuitem/minimenuitem.js +0 -33
  211. data/js/util/reloadapp/js.inc +0 -0
  212. data/js/util/sha/js.inc +0 -0
  213. data/js/views/centerview/js.inc +0 -0
  214. data/js/views/inlineview/js.inc +0 -0
  215. data/js/views/scrollview/js.inc +0 -0
  216. data/lib/conf/argv.rb +0 -880
data/INSTALL.rdoc CHANGED
@@ -25,12 +25,12 @@ This is a list of system level dependencies. You only need to do this step once;
25
25
 
26
26
  === Mac OS X
27
27
 
28
- ==== Mac OS X 10.6
28
+ ==== Mac OS X 10.6 "Snow Leopard" and 10.7 "Lion"
29
29
 
30
30
  * Install *XCode*[http://developer.apple.com/mac/] to get the essential development tools, like compilers.
31
31
  * Proceed to section 3.0
32
32
 
33
- ==== Mac OS X 10.4 and 10.5
33
+ ==== Mac OS X 10.4 "Tiger" and 10.5 "Leopard"
34
34
 
35
35
  This step applies only to Mac OS X 10.4 "Tiger" and 10.5 "Leopard". The default ruby build of these versions of Mac OS X is somewhat broken.
36
36
 
@@ -120,6 +120,8 @@ This not only enables SessionStorage (persistent sessions between RSence restart
120
120
  * *rake*[http://rake.rubyforge.org]
121
121
  * Ruby build tool
122
122
  * Not necessarily required via ruby gems, if installed via a system-level package
123
+ * *coffee-script*[https://github.com/josh/ruby-coffee-script]
124
+ * Ruby library for .coffee -> .js compliation
123
125
  * *rack*[http://rack.rubyforge.org]
124
126
  * Abstract ruby web server interface
125
127
  * A rack handler is also required. One of the following is suggested:
@@ -130,7 +132,7 @@ This not only enables SessionStorage (persistent sessions between RSence restart
130
132
  * *json*[http://flori.github.com/json]:: Library for bi-directional JSON[http://json.org] conversion.
131
133
  * *yaml*[http://yaml4r.sourceforge.net/doc]:: Library for handling YAML[http://www.yaml.org] files
132
134
  * *randgen*:: C-optimized random string generator developed for RSence specifically
133
- * *jsmin_c*:: C-optimized Javascript whitespace removal library; Ruby wrapper developed for RSence specifically; based on the original JSMin[http://www.crockford.com/javascript/jsmin.html]
135
+ * *jsminc*:: C-optimized Javascript whitespace removal library; Ryan Fitzgerald's Ruby wrapper for Douglas Crockford's jsmin.c
134
136
  * *jscompress*:: C-optimized Javascript compression and obfuscation library developed for RSence specifically
135
137
  * *html_min*:: C-optimized HTML whitespace removal library developed for RSence specifically
136
138
  * *cssmin*:: CSS whitespace removal library
data/README.rdoc CHANGED
@@ -1,21 +1,30 @@
1
1
 
2
- = RSence-2.1.0[http://rsence.org/]
2
+ = RSence-2.2.0[http://rsence.org/]
3
3
 
4
4
  == Introduction
5
5
 
6
- RSence is a RIA framework designed for responsive GUI applications on the web; it's implemented as a hybrid Ruby - Javascript system. The server is written in Ruby and C. Applications are installed as plugin bundles. The GUI framework is written in Javascript; it doesn't strictly require the server, but has extensive transport support with automatic data synchronization with the server. User interfaces are usually described in structured view trees represented by YAML data structures, which are automatically converted for rendering in the client.
6
+ RSence is a different and unique development model and software frameworks designed first-hand for real-time web applications. RSence consists of separate, but tigtly integrated data- and user interface frameworks.
7
7
 
8
- Javascript knowledge is required only when creating custom client-driven functionality; basic understanding of the YAML GUITree structures is enough in most cases. Likewise, no prior Ruby knowledge is needed if you want to create stand-alone Javascript applications. Javascript component themes are easily created with just basic web designer skills. Data API's are easy to link no matter what language is used to create them. Skills in your organization are easily combined for various parts of larger applications.
8
+ RSence could be classified as a thin server - thick client system.
9
9
 
10
- RSence is not primarily targeted as an engine for plain old html web sites, there are plenty of other tools for that purpose and RSence is easily integrated with them in various ways.
10
+ Applications and submobules are installed as indepenent plugin bundles into the plugins folder of a RSence environment, which in itself is a self-contained bundle. A big part of RSence itself is implemented as shared plugin bundles.
11
11
 
12
+ The user interface framework of RSence is implemented in high-level user interface widget classes. The widget classes share a common foundation API and access the browser's native API's using an abstracted event- and element layer, which provides exceptional cross-browser compatibility.
12
13
 
13
- == Installing
14
- Just run this command in the shell, if you have ruby installed. Otherwise, read the {file:INSTALL Install Guide} for full installation instructions.
14
+ The data framework of RSence is a event-driven system, which synchronized shared values between the client and server. It's like a realtime bidirectional form-submission engine that handles data changes intelligently. On the client, changed values trigger events on user interface widgets. On the server, changed values trigger events on value responder methods of server plugin modules. It doesn't matter if the change originates on client or server, it's all synchronized and propagated automatically.
15
+
16
+ The server framework is implemented as a high-level, modular data-event-driven system, which handles delegation of tasks impossible to implement using a client-only approach.
17
+ Client sessions are selectively connected to other client sessions and legacy back-ends via the server by using the data framework.
18
+
19
+ The client is written in Javascript and the server is written in Ruby. The client also supports CoffeeScript for custom logic. In many cases, no custom client logic is needed; the user interfaces can be defined in tree-like data models. By default, the models are parsed from YAML files, and other structured data formats are possible, including XML, JSON, databases or any custom logic capable of producing similar objects. The server can connect to custom environments and legacy backends accessible on the server, including software written in other languages.
20
+
21
+
22
+ == Installing RSence
23
+ Just run this command in the shell, if you have functioning ruby environment installed. Otherwise, read the {file:INSTALL Install Guide} for full installation instructions.
15
24
  gem install rsence
16
25
 
17
26
 
18
- == Initializing a new project
27
+ == Initializing a new RSence environment
19
28
 
20
29
  The +init+ command will create a directory called `env_dir` in this example. It asks a few questions about the environment. Use a path and project name that matches your purposes.
21
30
  rsence init /home/me/rsence_projects/env_dir
@@ -89,26 +98,18 @@ For more detailed installation and usage instructions, read the {file:INSTALL In
89
98
 
90
99
  === The bleeding edge (for developers)
91
100
  RSence comes in two varieties:
92
- 1. rsence : The stable (no major new features, just bug fixes) release.
93
- 2. rsence-pre : The active development snapshot released periodically.
94
-
95
- Both varieties can be installed simultaneously and it's suggested to use
96
- the stable "rsence" package for production installations and to use the
97
- "rsence-pre" package for development purposes, because the RSence crew
98
- can't possibly test each and every application available. It's your
99
- responsibility as a developer to report any RSence issues effecting your
100
- software. The sooner reported, the better; it ensures better release
101
- versions.
101
+ 1. rsence : The stable release intended for running in production environments.
102
+ 2. rsence-pre : The active development snapshot intended for develoment environments. Runtime-wise, it's nearly as stable as the stable version, but features are constantly added and sometimes changed.
102
103
 
103
- To use "rsence-pre", install the "rsence-pre" gem and use the "rsence-pre"
104
- command instead of the "rsence" command.
104
+ To use "rsence-pre", install the "rsence-pre" gem and use the "rsence-pre" instead of "rsence" command-line tool.
105
105
 
106
106
  === Licensing and commercial support options
107
107
  * {file:LICENSE.txt *GPL*} version 3 by default.
108
108
  * Riassence[http://riassence.com/] Inc. provides commercial support, custom licensing arrangements and various other services.
109
109
 
110
110
  === Community support
111
- * http://rsence.org
112
- * IRC channel +#rsence+ on the IRCNet and FreeNode networks
113
-
111
+ * http://rsence.org/
112
+ * IRC channel +#rsence+ on the FreeNode IRC network
114
113
 
114
+ === Keywords:
115
+ HTML5 Javascript CoffeeScript Ruby RIA Server Client Data-Driven Event-Driven Web Framework
data/VERSION CHANGED
@@ -1 +1 @@
1
- 2.1.11
1
+ 2.2.0
@@ -26,6 +26,12 @@
26
26
  #
27
27
  # A list of javascript dependencies to include in the html
28
28
  :deps: [ ]
29
+ #
30
+ # Boot library:
31
+ :boot_lib: rsence
32
+ #
33
+ # Default additional libraries to use:
34
+ :default_libs: []
29
35
  #
30
36
  # The settings for the main plugin
31
37
  :main_plugin:
@@ -36,6 +42,27 @@
36
42
  # how many milliseconds to wait before doing an idle poll
37
43
  :server_poll_interval: 2000 # 2 seconds
38
44
  #
45
+ # The settings for the daemon
46
+ :daemon:
47
+ #
48
+ # How long to wait before binding the broker to the
49
+ # HTTP address and port after starting the Transporter.
50
+ # A value of -1 disables the broker completely.
51
+ # Before waiting, the daemon starts all subsystems except the
52
+ # http handling front-end (Broker).
53
+ # Useful in situations where RSence itself configures the
54
+ # network interfaces or the interfaces become available after
55
+ # RSence is started.
56
+ :http_delayed_start: 0
57
+ #
58
+ # Save plugin and session state every n seconds.
59
+ # Set to 0 or negative to disable.
60
+ :autosave_interval: 180 # once every 3 minutes
61
+ #
62
+ # Daemon helper files, leave empty for defaults.
63
+ #:pid_fn: /var/run/rsence.pid
64
+ #:log_fn: /var/log/rsence.log
65
+ #
39
66
  # Switches on debug-mode:
40
67
  # - Generates more output
41
68
  # - Each time /hello is post-requested:
@@ -54,7 +81,7 @@
54
81
  :port: 8001
55
82
  #
56
83
  # Bind this ip address ('0.0.0.0' means all)
57
- :bind_address: '0.0.0.0'
84
+ :bind_address: '127.0.0.1'
58
85
  #
59
86
  # Rack handler to use, defaults to thin
60
87
  :rack_require: mongrel
@@ -83,7 +110,7 @@
83
110
  :client_poll_priority: 60
84
111
  #
85
112
  # Reload the client after any plugins are reloaded:
86
- :client_autoreload: false
113
+ :client_autoreload: true
87
114
  #
88
115
  #
89
116
  # Session-related settings
@@ -127,10 +154,6 @@
127
154
  # Defaults to false, will be the default in a future version.
128
155
  :clone_cookie_sessions: true
129
156
  #
130
- # This limits the amount of cloned targets of a source session.
131
- # NOTE: This has no effect yet, the code is not implemented.
132
- :max_cloned_sessions: 10
133
- #
134
157
  # This option overrides the default session timeout.
135
158
  # Don't set this to less than the expected poll interval,
136
159
  # otherwise the session might expire before the previous
@@ -161,12 +184,6 @@
161
184
  # Disposable keys, when enabled, changes the value id on each session restoration
162
185
  :disposable_keys: true
163
186
  #
164
- # Daemon helper files, leave empty for defaults.
165
- :daemon: {
166
- #:pid_fn: /var/run/rsence.pid
167
- #:log_fn: /var/log/rsence.log
168
- }
169
- #
170
187
  # Entered by code, empty container
171
188
  :broker_urls: { }
172
189
 
@@ -178,13 +195,7 @@
178
195
 
179
196
  # Source directories to scan
180
197
  :src_dirs: []
181
-
182
- # RSence Client Framework
183
- #- js
184
-
185
- # How to include your own custom js package directory:
186
- # - /home/me/code/extra_components
187
-
198
+
188
199
  # List of theme names to include and pack
189
200
  :theme_names:
190
201
  - default # Makes default_theme.js containing css and html templates
@@ -195,23 +206,25 @@
195
206
 
196
207
  # The core package, loaded by default using a script tag in index_html
197
208
  core:
198
-
209
+
199
210
  # RSence.*
200
211
  - rsence_ns
201
-
212
+
213
+ - locale_settings # HLocaleSettings
214
+
202
215
  # RSence.Core
203
216
  - class # HClass
204
217
  - elem # ELEM
205
218
  - event # Event
206
-
219
+
207
220
  # RSence.Util
208
221
  - sha # SHA
209
-
222
+
210
223
  # RSence.Foundation
211
224
  - system # HSystem
212
225
  - valueresponder # HValueResponder
213
226
  - application # HApplication
214
-
227
+
215
228
  # COMM
216
229
  - comm # COMM
217
230
  - queue # COMM.Queue
@@ -237,6 +250,7 @@
237
250
  - eventmanager # EVENT
238
251
  - controldefaults # HControlDefaults
239
252
  - control # HControl
253
+ - valueaction # HValueAction
240
254
  - dyncontrol # HDynControl
241
255
  - centerview # HCenterView
242
256
  - scrollview # HScrollView
@@ -251,6 +265,7 @@
251
265
  - textcontrol # HTextControl
252
266
  - passwordcontrol # HPasswordControl
253
267
  - textarea # HTextArea
268
+ - searchfield # HSearchField
254
269
  - uploader # HUploader
255
270
  - slider # HSlider
256
271
  - vslider # HVSlider
@@ -279,6 +294,7 @@
279
294
  datetime:
280
295
  - datetimevalue # HDateTime
281
296
  - calendar # HCalendar
297
+ - datetimepicker # HDateTimePicker
282
298
  - timesheet # HTimeSheet
283
299
  - timesheet_item # HTimeSheetItem
284
300
  - timesheet_item_edit # HTimeSheetItemEditor
@@ -294,15 +310,38 @@
294
310
  - propertylisteditor # HPropertyEditor
295
311
  - minimenu # HMiniMenu
296
312
  - minimenuitem # HMiniMenuItem
313
+ - popupmenu # HPopupMenu
314
+ - menuitem # HMenuItem
315
+
316
+ tables:
317
+ - table # HTable
297
318
 
298
- # Special packages that include other packages (not used currently)
319
+ # Graphics related control widgets (components)
320
+ # These are not complete and there will probably never be any
321
+ # serious efforts to support legacy browsers, like old IE versions,
322
+ # unless someone is interested in sponsoring such efforts.
323
+ graphics:
324
+ - svgcontrol
325
+
326
+ # Special packages that include other packages
299
327
  :compound_packages:
300
- allinone:
328
+ rsence:
301
329
  - core
302
330
  - default_theme
303
331
  - controls
304
332
  - lists
305
333
  - datetime
334
+ - tables
335
+ - graphics
336
+ - servermessage
337
+ std_widgets:
338
+ - default_theme
339
+ - controls
340
+ - lists
341
+ - datetime
342
+ - tables
343
+ - graphics
344
+ - servermessage
306
345
 
307
346
  # List of variables and other names beginning
308
347
  # with a underscore that should not be obfuscated
@@ -325,9 +364,6 @@
325
364
  - .svg
326
365
  - .pdf
327
366
 
328
- # The name of the include file
329
- :js_inc: js.inc
330
-
331
367
  # If disabled, makes packages out of single source bundles automatically
332
368
  :dont_pack_undefined: true
333
369
 
@@ -4,17 +4,17 @@
4
4
  Invalid option for <%%= option_name.to_s %>:
5
5
  Expected number, got: <%%= arg.inspect %>.
6
6
 
7
- Type 'rsence help <%%= @cmd.to_s %>' for usage.
7
+ Type rsence help <%%= @cmd.to_s %>” for usage.
8
8
  :no_such_configuration_file: |+
9
9
  No such configuration file:
10
10
  <%%= arg.inspect %>
11
11
 
12
- Type 'rsence help <%%= @cmd.to_s %>' for usage.
12
+ Type rsence help <%%= @cmd.to_s %>” for usage.
13
13
  :no_value_for_option: |+
14
14
  No value for option:
15
15
  <%%= option_name.to_s.inspect %>
16
16
 
17
- Type 'rsence help <%%= @cmd.to_s %> for usage."
17
+ Type rsence help <%%= @cmd.to_s %>” for usage.
18
18
  :no_such_directory: |
19
19
  No such directory:
20
20
  <%%= path.inspect %>
@@ -45,32 +45,34 @@
45
45
  :invalid_environment: |
46
46
  Invalid environment: <%%= env_path.inspect %>
47
47
 
48
- Type 'rsence help <%%= @cmd.to_s %>' for usage."
49
- Type 'rsence help init' for environment initialization usage."
48
+ Type rsence help <%%= @cmd.to_s %>” for usage.
49
+ Type rsence help init for environment initialization usage.
50
50
  :invalid_option_chr: |
51
51
  Invalid option character for option character block <%%= arg.inspect %>:
52
52
  <%%= chr.inspect %>
53
53
 
54
- Type 'rsence help <%%= @cmd.to_s %>' for usage."
54
+ Type rsence help <%%= @cmd.to_s %>” for usage.
55
55
  :invalid_option: |
56
56
  Invalid option:
57
57
  <%%= arg.inspect %>.
58
58
 
59
- Type 'rsence help <%%= @cmd.to_s %>' for usage."
59
+ Type rsence help <%%= @cmd.to_s %>” for usage.
60
60
  :no_pid: |
61
61
  No PID, unable to check process status.
62
62
  :no_pid_file: |
63
63
  No PID file, unable to check process status.
64
64
  :no_pid_support: |
65
65
  No PID support, unable to check process status.
66
+ :something_responds:
67
+ Something responds on <%%= addr_descr %>
66
68
  :no_process_running_but_something_responds: |
67
- No process running, but something responds on <%%= addr %>:<%%= port %>.
69
+ No process running, but something responds on <%%= addr_descr %>.
68
70
  :no_process_running_and_nothing_responds: |
69
- No process running, and nothing responds on <%%= addr %>:<%%= port %>.
71
+ No process running, and nothing responds on <%%= addr_descr %>.
70
72
  :process_running_and_responds: |
71
- Process ID <%%= pid %> is running and responds on <%%= addr %>:<%%= port %>.
73
+ Process ID <%%= pid %> is running and responds on <%%= addr_descr %>.
72
74
  :process_running_but_nothing_responds: |
73
- Process ID <%%= pid %> is running, but does not respond on <%%= addr %>:<%%= port %>.
75
+ Process ID <%%= pid %> is running, but does not respond on <%%= addr_descr %>.
74
76
  :saving_message: <
75
77
  Saving session data...
76
78
  :no_pid_unable_to_save: |
@@ -79,12 +81,18 @@
79
81
  No process running.
80
82
  :session_data_saved: |
81
83
  Session data saved.
84
+
82
85
  # Strings for the init command
83
86
  :initenv:
87
+ :continue_question: "Do you want to continue, "
84
88
  :env_already_initialized: |
85
89
  Environment already initialized.
90
+ :env_not_clear: |
91
+ Environment directory <%%= @args[:env_path] %> is not empty,
92
+ and appears to be an RSence environment.
86
93
  :env_not_empty: |
87
- Environment directory <%%= @args[:env_path] %> is not empty.
94
+ Environment directory <%%= @args[:env_path] %> is not empty,
95
+ but does not appear to be an RSence environment.
88
96
  :creating_env: |+
89
97
 
90
98
  Creating a new RSence environment at <%%= @args[:env_path] %>
@@ -111,7 +119,7 @@
111
119
 
112
120
 
113
121
  Please specify the connection string for the session database to use.
114
- By default, a local SQLite database is created in the 'db' subdirectory
122
+ By default, a local SQLite database is created in the db subdirectory
115
123
  of the environment directory. Any database supported by Sequel is supported
116
124
  by RSence.
117
125
 
@@ -171,16 +179,16 @@
171
179
 
172
180
  :confirm_config: "Is the configuration correct, "
173
181
  :creating_dirs: "Creating directories..."
174
- :install_welcome: "Do you want to install the 'welcome' plugin as a starting point, "
182
+ :install_welcome: "Do you want to install the welcome plugin as a starting point, "
175
183
  :installing_welcome_plugin: |+
176
184
  Installing the welcome plugin. To remove it, just delete this folder:
177
185
  <%%= welcome_plugin_dst %>
178
186
  :creating_files: "Creating files..."
179
187
  :congratulations: |+
180
188
 
181
- <%= '-='*39 %>-
189
+ <%= ('-='*39)+'-' %>
182
190
 
183
- RSence project environment for '<%%= config[:index_html][:title] %>' created.
191
+ RSence project environment for <%%= config[:index_html][:title] %> created.
184
192
 
185
193
  You may configure the environment by editing the file:
186
194
 
@@ -203,26 +211,26 @@
203
211
  Congratulations!
204
212
 
205
213
  :readme: |
206
- This directory contains a RSence environment titled '<%%= config[:index_html][:title] %>'.
214
+ This directory contains a RSence environment titled <%%= config[:index_html][:title] %>.
207
215
  Visit http://rsence.org/ for further information.
208
- # Help for the 'rsence' command line tool.
216
+ # Help for the rsence command line tool.
209
217
  :help:
210
218
  :head: |+
211
- RSence command-line tool, version <%= @@version %>
219
+ RSence command-line tool, version <%= @version %>
212
220
 
213
221
  :tail: |+
214
- RSence is a self-contained rich internet application client-server framework.
222
+ RSence is a self-contained web app framework.
215
223
  For further information, see http://rsence.org/
216
224
  :unknown: >
217
225
  Unknown command:
218
226
 
219
227
  :help_help: >
220
- Type 'rsence help' for usage.
228
+ Type rsence help for usage.
221
229
 
222
230
  :help_main: |+
223
231
  usage: rsence <command> [options] [args]
224
232
 
225
- Type 'rsence help <command>' for help on a specific command.
233
+ Type rsence help <command>” for help on a specific command.
226
234
 
227
235
  Available commands:
228
236
  <%= help_avail_cmds %>
@@ -252,9 +260,9 @@
252
260
 
253
261
  --port <number> The port number the http server listens to.
254
262
 
255
- --addr <ip address> The IP address or net mask the http server listens to.
256
- '0.0.0.0' matches all interfaces.
257
- '127.0.0.1' matches the local loopback interface.
263
+ --bind <ip address> The IP address or net mask the http server listens to.
264
+ 0.0.0.0 matches all interfaces.
265
+ 127.0.0.1 matches the local loopback interface.
258
266
 
259
267
  --server <handler> The Rack handler to use. Defaults to mongrel
260
268
 
@@ -269,31 +277,50 @@
269
277
  --latency <number> Sleeps <number> amount of milliseconds on every
270
278
  request. Useful for testing slow connections.
271
279
 
272
- --say (-S) Uses speech synthesis via the 'say' command to
280
+ --say (-S) Uses speech synthesis via the say command to
273
281
  provide audible feedback, when --auto-update is
274
- enabled. Says 'Autobuild complete.',
275
- 'Loaded [plugin name].', 'Unloaded [plugin name].',
276
- 'Reloaded [plugin name].', 'Reloading plugins.' and
277
- 'Plugins reloaded.'
282
+ enabled. Says Autobuild complete.”,
283
+ Loaded [plugin name].”, Unloaded [plugin name].”,
284
+ Reloaded [plugin name].”, Reloading plugins.” and
285
+ Plugins reloaded.”
278
286
  Only available on Mac OS X and other systems with a
279
- 'say' command installed.
287
+ say command installed.
288
+
289
+ --delayed-start <secs> Waits for <secs> of seconds before starting
290
+ the HTTP Broker after starting the Transporter.
291
+
292
+ A value of -1 disables the broker completely.
293
+ Before waiting, the daemon starts all subsystems except the
294
+ http handling front-end (Broker).
295
+ Useful in situations where RSence itself configures the
296
+ network interfaces or the interfaces become available after
297
+ RSence is started.
298
+
299
+ --disable-gzip Disables client resource GZIP compression for every browser.
300
+
301
+ --disable-obfuscation Disables client resource compression (obfuscation).
302
+
303
+ --disable-jsmin Does not strip whitespace from client resources (jsmin).
304
+
305
+ --build-report Outputs verbose client resource actions.
306
+
280
307
 
281
308
  :initenv: |+
282
- Alias name of the 'init' command.
309
+ Alias name of the init command.
283
310
 
284
311
  See: rsence help init
285
312
 
286
313
  :initialize: |+
287
- Alias name of the 'init' command.
314
+ Alias name of the init command.
288
315
 
289
316
  See: rsence help init
290
317
 
291
318
  :init: |+
292
- usage: 'rsence init [options] [PATH]'
319
+ usage: rsence init [options] [PATH]
293
320
 
294
- The 'init' command creates a new RSence environment.
321
+ The init command creates a new RSence environment.
295
322
 
296
- The expected structure of a project environment (where 'project_directory'
323
+ The expected structure of a project environment (where project_directory
297
324
  is the directory of your project) is:
298
325
 
299
326
  [d] project_name : The name of your project.
@@ -306,7 +333,7 @@
306
333
  [f] README : Description of the environment directory.
307
334
  [f] VERSION : RSence version the environment was created with
308
335
 
309
- The 'config.yaml' file contains patches specific to your project.
336
+ The config.yaml file contains patches specific to your project.
310
337
 
311
338
  The configuration files are loaded and applied in this order:
312
339
  1: [rsence_install_path]/conf/default_conf.yaml
@@ -324,8 +351,8 @@
324
351
  --port <number> The port number the http server listens to.
325
352
 
326
353
  --addr <ip address> The IP address or net mask the http server listens to.
327
- '0.0.0.0' matches all interfaces.
328
- '127.0.0.1' matches the local loopback interface.
354
+ 0.0.0.0 matches all interfaces.
355
+ 127.0.0.1 matches the local loopback interface.
329
356
  Defaults to 0.0.0.0
330
357
 
331
358
  --server <handler> The Rack handler to use. Defaults to mongrel
@@ -335,55 +362,55 @@
335
362
  --database <conn_str> Use the Sequel connection string to configure the
336
363
  default session database.
337
364
 
338
- --uri-prefix <path> Configure RSence to use this http "directory" as
365
+ --uri-prefix <path> Configure RSence to use this http directory as
339
366
  the prefix. It defaults to the root directory: /
340
367
 
341
- --blank Doesn't install the Welcome -plugin.
368
+ --blank Doesnt install the Welcome -plugin.
342
369
 
343
- --non-interactive (-q) Doesn't ask anything, just creates the environment
370
+ --non-interactive (-q) Doesnt ask anything, just creates the environment
344
371
  with the options supplied.
345
372
 
346
373
  For further configuration, edit the config.yaml file.
347
374
 
348
375
  :run: |+
349
- usage: 'rsence run [options] [PATH]'
376
+ usage: rsence run [options] [PATH]
350
377
 
351
- The 'run' command starts RSence in foreground (no daemon). Exit with CTRL-C.
378
+ The run command starts RSence in foreground (no daemon). Exit with CTRL-C.
352
379
 
353
380
  :start: |+
354
- usage: 'rsence start [options] [PATH]'
381
+ usage: rsence start [options] [PATH]
355
382
 
356
- The 'start' command starts RSence in the background (as a daemon).
383
+ The start command starts RSence in the background (as a daemon).
357
384
 
358
- Use the 'stop' command to stop RSence.
385
+ Use the stop command to stop RSence.
359
386
 
360
- Use the 'restart' command to restart RSence in the background.
387
+ Use the restart command to restart RSence in the background.
361
388
 
362
- Use the 'status' command to see if RSence is running.
389
+ Use the status command to see if RSence is running.
363
390
 
364
391
  :stop: |+
365
- usage: 'rsence stop [options] [PATH]'
392
+ usage: rsence stop [options] [PATH]
366
393
 
367
- The 'stop' command stops RSence running in the background (as a daemon).
394
+ The stop command stops RSence running in the background (as a daemon).
368
395
 
369
- Use the 'status' command to see if RSence is running.
396
+ Use the status command to see if RSence is running.
370
397
 
371
398
  :restart: |+
372
- usage: 'rsence restart [options] [PATH]'
399
+ usage: rsence restart [options] [PATH]
373
400
 
374
- The 'restart' command restarts RSence in the background (as a daemon).
375
- If RSence wasn't running before the 'restart' command was issued, the
376
- effect is the same as 'start'.
401
+ The restart command restarts RSence in the background (as a daemon).
402
+ If RSence wasnt running before the restart command was issued, the
403
+ effect is the same as start”.
377
404
 
378
- Use the 'stop' command to stop RSence.
405
+ Use the stop command to stop RSence.
379
406
 
380
- Use the 'status' command to see if RSence is running.
407
+ Use the status command to see if RSence is running.
381
408
 
382
409
  :status: |+
383
- usage: 'rsence status [options] [PATH]'
410
+ usage: rsence status [options] [PATH]
384
411
 
385
- The 'status' command checks if RSence is running.
386
- If started with the 'start', 'run' or 'restart' command, a PID file is written.
412
+ The status command checks if RSence is running.
413
+ If started with the start”, run or restart command, a PID file is written.
387
414
  Status checks if the PID file exists, if the RSence process responds and if
388
415
  the configured TCP port responds in the configured IP address.
389
416
 
@@ -403,9 +430,9 @@
403
430
  --addr <ip address> The IP address or net mask the http server listens to.
404
431
 
405
432
  :save: |+
406
- usage: 'rsence save [options] [PATH]'
433
+ usage: rsence save [options] [PATH]
407
434
 
408
- The 'save' command signals the RSence process to tell the plugins to save their
435
+ The save command signals the RSence process to tell the plugins to save their
409
436
  data and the session manager to save its session database.
410
437
 
411
438
  Available options:
@@ -420,9 +447,9 @@
420
447
  --verbose (-v) More verbose output. Also enabled by --debug
421
448
 
422
449
  :version: |+
423
- usage: 'rsence version'
450
+ usage: rsence version
424
451
 
425
- The 'version' command simply outputs the version number of RSence.
452
+ The version command simply outputs the version number of RSence.
426
453
 
427
454
  RSence follows the common three-numbered sequence-based version identification
428
455
  scheme. The scheme is defined like: major.minor[.maintenance]
@@ -431,7 +458,7 @@
431
458
  backwards compatibility with software written for previous versions.
432
459
 
433
460
  The minor number designates minor changes in functionality, like minor or
434
- moderate changes in functionality that usually don't impact backwards
461
+ moderate changes in functionality that usually dont impact backwards
435
462
  compatibilty of software written for a previous release with the same major
436
463
  version.
437
464
 
@@ -442,14 +469,17 @@
442
469
  requires an unique version for each gem released, so pre-releases usually
443
470
  occupy the first package numbers of any release.
444
471
 
445
- RSence also comes in a '-pre' variety. Consider RSence prereleases as
446
- anything between 'Alpha', 'Beta' and 'Release Candidate'. The prereleases
472
+ RSence also comes in a ”-pre variety. Consider RSence prereleases as
473
+ anything between Alpha”, Beta and Release Candidate”. The prereleases
447
474
  are have a fourth number in their version number string. That number
448
- is the 'package' or 'build' number.
475
+ is the package or build number.
449
476
 
450
477
  Version number conventions in written text should include both major and
451
- minor version numbers prefixed with 'RSence'. The maintennance number
478
+ minor version numbers prefixed with RSence”. The maintennance number
452
479
  is usally not mentioned unless an issue is fix or such is discussed.
453
480
 
454
- Example: "RSence 2.0 has undergone some major refactoring since 1.2.1"
481
+ Examples:
482
+ • ”RSence 2.0 is not fully backwards compatible with 1.2.1”
483
+ • ”RSence 2.1.4 has bugs fixed that were still present in 2.1.3”
484
+ • ”RSence 2.2 has major new features compared to 2.0 and 2.1”
455
485