rsence 2.0.0.0.pre
Sign up to get free protection for your applications and to get access to all the features.
- data/INSTALL.rdoc +295 -0
- data/LICENSE +622 -0
- data/README.rdoc +24 -0
- data/VERSION +1 -0
- data/bin/build_client.rb +254 -0
- data/bin/help +6 -0
- data/bin/launch.rb +120 -0
- data/bin/rdoc.sh +2 -0
- data/bin/restart +6 -0
- data/bin/rsence +120 -0
- data/bin/run +6 -0
- data/bin/run.rb +6 -0
- data/bin/save +6 -0
- data/bin/start +6 -0
- data/bin/status +6 -0
- data/bin/stop +6 -0
- data/conf/config.ru +5 -0
- data/conf/default_conf.yaml +337 -0
- data/conf/default_strings.yaml +77 -0
- data/conf/local_conf.yaml +14 -0
- data/conf/unicorn.conf +78 -0
- data/js/comm/comm/autosync/autosync.js +18 -0
- data/js/comm/comm/autosync/js.inc +0 -0
- data/js/comm/comm/comm.js +195 -0
- data/js/comm/comm/js.inc +0 -0
- data/js/comm/comm/queue/js.inc +0 -0
- data/js/comm/comm/queue/queue.js +183 -0
- data/js/comm/comm/session/js.inc +0 -0
- data/js/comm/comm/session/session.js +51 -0
- data/js/comm/comm/sessionwatcher/js.inc +0 -0
- data/js/comm/comm/sessionwatcher/sessionwatcher.js +43 -0
- data/js/comm/comm/transporter/js.inc +0 -0
- data/js/comm/comm/transporter/transporter.js +257 -0
- data/js/comm/comm/urlresponder/js.inc +0 -0
- data/js/comm/comm/urlresponder/urlresponder.js +148 -0
- data/js/comm/comm/values/js.inc +0 -0
- data/js/comm/comm/values/values.js +432 -0
- data/js/comm/jsloader/js.inc +0 -0
- data/js/comm/jsloader/jsloader.js +114 -0
- data/js/comm/reloadapp/js.inc +0 -0
- data/js/comm/reloadapp/reloadapp.js +150 -0
- data/js/comm/reloadapp/themes/default/reloadapp_warning-ie6.gif +0 -0
- data/js/comm/reloadapp/themes/default/reloadapp_warning.png +0 -0
- data/js/comm/sha/js.inc +0 -0
- data/js/comm/sha/sha.js +432 -0
- data/js/comm/values/value/js.inc +0 -0
- data/js/comm/values/value/value.js +182 -0
- data/js/comm/values/valuematrix/js.inc +0 -0
- data/js/comm/values/valuematrix/valuematrix.js +138 -0
- data/js/controls/button/button.js +57 -0
- data/js/controls/button/js.inc +0 -0
- data/js/controls/button/themes/bright/button.css +89 -0
- data/js/controls/button/themes/bright/button.html +7 -0
- data/js/controls/button/themes/bright/button_parts1-ie6.gif +0 -0
- data/js/controls/button/themes/bright/button_parts1.png +0 -0
- data/js/controls/button/themes/default/button.css +89 -0
- data/js/controls/button/themes/default/button.html +7 -0
- data/js/controls/button/themes/default/button_parts1-ie6.gif +0 -0
- data/js/controls/button/themes/default/button_parts1.png +0 -0
- data/js/controls/checkbox/checkbox.js +47 -0
- data/js/controls/checkbox/js.inc +0 -0
- data/js/controls/checkbox/themes/default/checkbox.css +69 -0
- data/js/controls/checkbox/themes/default/checkbox.html +5 -0
- data/js/controls/checkbox/themes/default/checkbox_parts1-ie6.gif +0 -0
- data/js/controls/checkbox/themes/default/checkbox_parts1.png +0 -0
- data/js/controls/datetime/calendar/calendar.js +197 -0
- data/js/controls/datetime/calendar/js.inc +0 -0
- data/js/controls/datetime/calendar/themes/default/calendar.css +108 -0
- data/js/controls/datetime/calendar/themes/default/calendar.html +9 -0
- data/js/controls/datetime/calendar/themes/default/calendar_arrows-ie6.gif +0 -0
- data/js/controls/datetime/calendar/themes/default/calendar_arrows.png +0 -0
- data/js/controls/datetime/datetimevalue/datetimevalue.js +246 -0
- data/js/controls/datetime/datetimevalue/js.inc +0 -0
- data/js/controls/datetime/timesheet/js.inc +0 -0
- data/js/controls/datetime/timesheet/themes/default/timesheet.css +30 -0
- data/js/controls/datetime/timesheet/themes/default/timesheet.html +2 -0
- data/js/controls/datetime/timesheet/timesheet.js +182 -0
- data/js/controls/datetime/timesheet_item/js.inc +0 -0
- data/js/controls/datetime/timesheet_item/themes/default/timesheet_item.css +42 -0
- data/js/controls/datetime/timesheet_item/themes/default/timesheet_item.html +8 -0
- data/js/controls/datetime/timesheet_item/timesheet_item.js +247 -0
- data/js/controls/datetime/timesheet_item_edit/js.inc +0 -0
- data/js/controls/datetime/timesheet_item_edit/timesheet_item_edit.js +274 -0
- data/js/controls/dialogs/alert_sheet/alert_sheet.js +62 -0
- data/js/controls/dialogs/alert_sheet/js.inc +0 -0
- data/js/controls/dialogs/confirm_sheet/confirm_sheet.js +36 -0
- data/js/controls/dialogs/confirm_sheet/js.inc +0 -0
- data/js/controls/dialogs/sheet/js.inc +0 -0
- data/js/controls/dialogs/sheet/sheet.js +83 -0
- data/js/controls/dialogs/sheet/themes/default/sheet.css +64 -0
- data/js/controls/dialogs/sheet/themes/default/sheet.html +14 -0
- data/js/controls/dialogs/sheet/themes/default/sheet_bg-ie6.gif +0 -0
- data/js/controls/dialogs/sheet/themes/default/sheet_bg.png +0 -0
- data/js/controls/dialogs/sheet/themes/default/sheet_dim-ie6.gif +0 -0
- data/js/controls/dialogs/sheet/themes/default/sheet_dim.png +0 -0
- data/js/controls/dialogs/sheet/themes/default/sheet_parts1-ie6.gif +0 -0
- data/js/controls/dialogs/sheet/themes/default/sheet_parts1.png +0 -0
- data/js/controls/dialogs/sheet/themes/default/sheet_parts2-ie6.gif +0 -0
- data/js/controls/dialogs/sheet/themes/default/sheet_parts2.png +0 -0
- data/js/controls/dialogs/sheet/themes/default/sheet_warning-ie6.gif +0 -0
- data/js/controls/dialogs/sheet/themes/default/sheet_warning.png +0 -0
- data/js/controls/imageview/imageview.js +108 -0
- data/js/controls/imageview/js.inc +0 -0
- data/js/controls/imageview/themes/default/blank.gif +0 -0
- data/js/controls/lists/checkboxlist/checkboxlist.js +170 -0
- data/js/controls/lists/checkboxlist/js.inc +0 -0
- data/js/controls/lists/listitems/js.inc +0 -0
- data/js/controls/lists/listitems/listitems.js +65 -0
- data/js/controls/lists/radiobuttonlist/js.inc +0 -0
- data/js/controls/lists/radiobuttonlist/radiobuttonlist.js +126 -0
- data/js/controls/passwordcontrol/js.inc +0 -0
- data/js/controls/passwordcontrol/passwordcontrol.js +22 -0
- data/js/controls/passwordcontrol/themes/default/passwordcontrol.css +0 -0
- data/js/controls/passwordcontrol/themes/default/passwordcontrol.html +18 -0
- data/js/controls/progress/progressbar/js.inc +0 -0
- data/js/controls/progress/progressbar/progressbar.js +36 -0
- data/js/controls/progress/progressbar/themes/default/progressbar.css +16 -0
- data/js/controls/progress/progressbar/themes/default/progressbar.html +2 -0
- data/js/controls/progress/progressindicator/js.inc +0 -0
- data/js/controls/progress/progressindicator/progressindicator.js +43 -0
- data/js/controls/radiobutton/js.inc +0 -0
- data/js/controls/radiobutton/radiobutton.js +41 -0
- data/js/controls/radiobutton/themes/default/radiobutton.css +69 -0
- data/js/controls/radiobutton/themes/default/radiobutton.html +5 -0
- data/js/controls/radiobutton/themes/default/radiobutton_parts1-ie6.gif +0 -0
- data/js/controls/radiobutton/themes/default/radiobutton_parts1.png +0 -0
- data/js/controls/sliders/slider/js.inc +0 -0
- data/js/controls/sliders/slider/slider.js +356 -0
- data/js/controls/sliders/slider/themes/default/hslider_tracks-ie6.gif +0 -0
- data/js/controls/sliders/slider/themes/default/hslider_tracks.png +0 -0
- data/js/controls/sliders/slider/themes/default/slider.css +108 -0
- data/js/controls/sliders/slider/themes/default/slider.html +5 -0
- data/js/controls/sliders/slider/themes/default/slider_thumbs-ie6.gif +0 -0
- data/js/controls/sliders/slider/themes/default/slider_thumbs.png +0 -0
- data/js/controls/sliders/vslider/js.inc +0 -0
- data/js/controls/sliders/vslider/themes/default/vslider.css +52 -0
- data/js/controls/sliders/vslider/themes/default/vslider.html +5 -0
- data/js/controls/sliders/vslider/themes/default/vslider_tracks-ie6.gif +0 -0
- data/js/controls/sliders/vslider/themes/default/vslider_tracks.png +0 -0
- data/js/controls/sliders/vslider/vslider.js +40 -0
- data/js/controls/stepper/js.inc +0 -0
- data/js/controls/stepper/stepper.js +212 -0
- data/js/controls/stepper/themes/default/stepper-ie6.gif +0 -0
- data/js/controls/stepper/themes/default/stepper.css +14 -0
- data/js/controls/stepper/themes/default/stepper.html +2 -0
- data/js/controls/stepper/themes/default/stepper.png +0 -0
- data/js/controls/stringview/js.inc +0 -0
- data/js/controls/stringview/stringview.js +49 -0
- data/js/controls/stringview/themes/default/stringview.css +8 -0
- data/js/controls/stringview/themes/default/stringview.html +1 -0
- data/js/controls/tab/js.inc +0 -0
- data/js/controls/tab/tab.js +276 -0
- data/js/controls/tab/themes/bright/tab.css +76 -0
- data/js/controls/tab/themes/bright/tab.html +6 -0
- data/js/controls/tab/themes/bright/tab_bg_color-ie6.gif +0 -0
- data/js/controls/tab/themes/bright/tab_bg_color.png +0 -0
- data/js/controls/tab/themes/bright/tab_border_pattern-ie6.gif +0 -0
- data/js/controls/tab/themes/bright/tab_border_pattern.png +0 -0
- data/js/controls/tab/themes/bright/tab_parts1-ie6.gif +0 -0
- data/js/controls/tab/themes/bright/tab_parts1.png +0 -0
- data/js/controls/tab/themes/default/tab.css +77 -0
- data/js/controls/tab/themes/default/tab.html +6 -0
- data/js/controls/tab/themes/default/tab_bg_color-ie6.gif +0 -0
- data/js/controls/tab/themes/default/tab_bg_color.png +0 -0
- data/js/controls/tab/themes/default/tab_border_pattern-ie6.gif +0 -0
- data/js/controls/tab/themes/default/tab_border_pattern.png +0 -0
- data/js/controls/tab/themes/default/tab_parts1-ie6.gif +0 -0
- data/js/controls/tab/themes/default/tab_parts1.png +0 -0
- data/js/controls/textarea/js.inc +0 -0
- data/js/controls/textarea/textarea.js +23 -0
- data/js/controls/textarea/themes/default/textarea.css +21 -0
- data/js/controls/textarea/themes/default/textarea.html +18 -0
- data/js/controls/textcontrol/js.inc +0 -0
- data/js/controls/textcontrol/textcontrol.js +372 -0
- data/js/controls/textcontrol/themes/default/textcontrol.css +107 -0
- data/js/controls/textcontrol/themes/default/textcontrol.html +18 -0
- data/js/controls/textcontrol/themes/default/textcontrol_parts1-ie6.gif +0 -0
- data/js/controls/textcontrol/themes/default/textcontrol_parts1.png +0 -0
- data/js/controls/textcontrol/themes/default/textcontrol_parts2-ie6.gif +0 -0
- data/js/controls/textcontrol/themes/default/textcontrol_parts2.png +0 -0
- data/js/controls/textcontrol/themes/default/textcontrol_parts3-ie6.gif +0 -0
- data/js/controls/textcontrol/themes/default/textcontrol_parts3.png +0 -0
- data/js/controls/uploader/js.inc +0 -0
- data/js/controls/uploader/themes/default/upload_progress.gif +0 -0
- data/js/controls/uploader/themes/default/uploader.css +108 -0
- data/js/controls/uploader/themes/default/uploader.html +27 -0
- data/js/controls/uploader/uploader.js +153 -0
- data/js/controls/validatorview/js.inc +0 -0
- data/js/controls/validatorview/themes/default/validator-ie6.gif +0 -0
- data/js/controls/validatorview/themes/default/validator.png +0 -0
- data/js/controls/validatorview/themes/default/validatorview.css +0 -0
- data/js/controls/validatorview/themes/default/validatorview.html +0 -0
- data/js/controls/validatorview/validatorview.js +55 -0
- data/js/controls/window/js.inc +0 -0
- data/js/controls/window/themes/default/window.css +219 -0
- data/js/controls/window/themes/default/window.html +17 -0
- data/js/controls/window/themes/default/window_bg_active-ie6.gif +0 -0
- data/js/controls/window/themes/default/window_bg_active.png +0 -0
- data/js/controls/window/themes/default/window_bg_inactive-ie6.gif +0 -0
- data/js/controls/window/themes/default/window_bg_inactive.png +0 -0
- data/js/controls/window/themes/default/window_buttons-ie6.gif +0 -0
- data/js/controls/window/themes/default/window_buttons.png +0 -0
- data/js/controls/window/themes/default/window_parts1-ie6.gif +0 -0
- data/js/controls/window/themes/default/window_parts1.png +0 -0
- data/js/controls/window/themes/default/window_parts2-ie6.gif +0 -0
- data/js/controls/window/themes/default/window_parts2.png +0 -0
- data/js/controls/window/window.js +284 -0
- data/js/core/class/class.js +317 -0
- data/js/core/class/js.inc +0 -0
- data/js/core/elem/elem.js +1376 -0
- data/js/core/elem/js.inc +0 -0
- data/js/core/event/event.js +1021 -0
- data/js/core/event/js.inc +0 -0
- data/js/core/iefix/ie_css_element.htc +5 -0
- data/js/core/iefix/ie_css_style.htc +5 -0
- data/js/core/iefix/iefix.js +359 -0
- data/js/core/iefix/js.inc +0 -0
- data/js/debugg/debugg.js +43 -0
- data/js/debugg/js.inc +0 -0
- data/js/foundation/application/application.js +209 -0
- data/js/foundation/application/js.inc +0 -0
- data/js/foundation/control/control.js +342 -0
- data/js/foundation/control/controldefaults/controldefaults.js +59 -0
- data/js/foundation/control/controldefaults/js.inc +0 -0
- data/js/foundation/control/dummyvalue/dummyvalue.js +50 -0
- data/js/foundation/control/dummyvalue/js.inc +0 -0
- data/js/foundation/control/dyncontrol/dyncontrol.js +494 -0
- data/js/foundation/control/dyncontrol/js.inc +0 -0
- data/js/foundation/control/dyncontrol/themes/default/dyncontrol.css +0 -0
- data/js/foundation/control/dyncontrol/themes/default/dyncontrol.html +0 -0
- data/js/foundation/control/eventresponder/eventresponder.js +713 -0
- data/js/foundation/control/eventresponder/js.inc +0 -0
- data/js/foundation/control/js.inc +0 -0
- data/js/foundation/control/valueresponder/js.inc +0 -0
- data/js/foundation/control/valueresponder/valueresponder.js +77 -0
- data/js/foundation/geom/point/js.inc +0 -0
- data/js/foundation/geom/point/point.js +202 -0
- data/js/foundation/geom/rect/js.inc +0 -0
- data/js/foundation/geom/rect/rect.js +610 -0
- data/js/foundation/json_renderer/js.inc +0 -0
- data/js/foundation/json_renderer/json_renderer.js +231 -0
- data/js/foundation/system/js.inc +0 -0
- data/js/foundation/system/system.js +369 -0
- data/js/foundation/thememanager/js.inc +0 -0
- data/js/foundation/thememanager/thememanager.js +387 -0
- data/js/foundation/view/js.inc +0 -0
- data/js/foundation/view/markupview/js.inc +0 -0
- data/js/foundation/view/markupview/markupview.js +113 -0
- data/js/foundation/view/morphanimation/js.inc +0 -0
- data/js/foundation/view/morphanimation/morphanimation.js +236 -0
- data/js/foundation/view/view.js +1804 -0
- data/js/foundation/view/viewdefaults/js.inc +0 -0
- data/js/foundation/view/viewdefaults/viewdefaults.js +25 -0
- data/js/views/centerview/centerview.js +45 -0
- data/js/views/centerview/js.inc +0 -0
- data/js/views/inlineview/inlineview.js +14 -0
- data/js/views/inlineview/js.inc +0 -0
- data/js/views/scrollview/js.inc +0 -0
- data/js/views/scrollview/scrollview.js +39 -0
- data/lib/conf/default.rb +220 -0
- data/lib/conf/wizard.rb +303 -0
- data/lib/daemon/daemon.rb +293 -0
- data/lib/http/broker.rb +102 -0
- data/lib/http/rackup.rb +88 -0
- data/lib/http/request.rb +69 -0
- data/lib/http/response.rb +63 -0
- data/lib/plugins/gui_plugin.rb +129 -0
- data/lib/plugins/guiparser.rb +114 -0
- data/lib/plugins/plugin.rb +652 -0
- data/lib/plugins/plugin_plugins.rb +47 -0
- data/lib/plugins/plugin_sqlite_db.rb +72 -0
- data/lib/plugins/plugin_util.rb +96 -0
- data/lib/plugins/pluginmanager.rb +517 -0
- data/lib/plugins/servlet.rb +69 -0
- data/lib/session/msg.rb +291 -0
- data/lib/session/sessionmanager.rb +491 -0
- data/lib/session/sessionstorage.rb +314 -0
- data/lib/transporter/transporter.rb +254 -0
- data/lib/util/gzstring.rb +5 -0
- data/lib/values/hvalue.rb +323 -0
- data/lib/values/valuemanager.rb +152 -0
- data/plugins/client_pkg/client_pkg.rb +186 -0
- data/plugins/client_pkg/info.yaml +25 -0
- data/plugins/client_pkg/lib/client_pkg_build.rb +569 -0
- data/plugins/client_pkg/lib/client_pkg_cache.rb +50 -0
- data/plugins/client_pkg/lib/client_pkg_serve.rb +210 -0
- data/plugins/client_pkg/log/build_log +0 -0
- data/plugins/index_html/img/loading.gif +0 -0
- data/plugins/index_html/img/riassence.gif +0 -0
- data/plugins/index_html/index_html.rb +150 -0
- data/plugins/index_html/tmpl/index.html +22 -0
- data/plugins/index_html/tmpl/startup_index.html +29 -0
- data/plugins/legacy/disabled +0 -0
- data/plugins/legacy/disabled- +0 -0
- data/plugins/legacy/info.yaml +22 -0
- data/plugins/legacy/legacy.rb +15 -0
- data/plugins/main/js/riassence_ns.js +87 -0
- data/plugins/main/main.rb +234 -0
- data/plugins/main/values.yaml +8 -0
- data/plugins/ticketservices/lib/common.rb +300 -0
- data/plugins/ticketservices/lib/favicon.rb +38 -0
- data/plugins/ticketservices/lib/file.rb +58 -0
- data/plugins/ticketservices/lib/img.rb +50 -0
- data/plugins/ticketservices/lib/objblob.rb +66 -0
- data/plugins/ticketservices/lib/rsrc.rb +34 -0
- data/plugins/ticketservices/lib/upload.rb +206 -0
- data/plugins/ticketservices/ticketservices.rb +268 -0
- data/var/db/.git_include +0 -0
- data/var/log/.git_include +0 -0
- data/var/run/.git_include +0 -0
- metadata +390 -0
File without changes
|
@@ -0,0 +1,342 @@
|
|
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
|
+
* The foundation class for all active visual components that
|
11
|
+
* implement events and values.
|
12
|
+
*
|
13
|
+
* Extend +HControl+ to suit your needs. See any component
|
14
|
+
* for extension reference.
|
15
|
+
*
|
16
|
+
**/
|
17
|
+
HControl = HView.extend({
|
18
|
+
|
19
|
+
/** Component behaviour includes 'view' and 'control' as a default.
|
20
|
+
**/
|
21
|
+
componentBehaviour: ['view','control'],
|
22
|
+
|
23
|
+
/** A flag: when true, calls the +refreshValue+ method whenever
|
24
|
+
* +self.value+ is changed.
|
25
|
+
**/
|
26
|
+
refreshOnValueChange: true,
|
27
|
+
|
28
|
+
/** The event object structure that specifies which events to listen to.
|
29
|
+
**/
|
30
|
+
events: null,
|
31
|
+
|
32
|
+
/** The enabled/disabled flag. See setEnabled.
|
33
|
+
**/
|
34
|
+
enabled: null,
|
35
|
+
|
36
|
+
/** The current value of a component. See setValue.
|
37
|
+
**/
|
38
|
+
value: null,
|
39
|
+
|
40
|
+
/** The current HValue compatible object. Do not set directly.
|
41
|
+
* Holds reference to the bound HValue instance.
|
42
|
+
* Set with HValue.bind.
|
43
|
+
**/
|
44
|
+
valueObj: null,
|
45
|
+
|
46
|
+
/** The minimum numeric value allowed, when the component
|
47
|
+
* utilizes value ranges. See setValueRange
|
48
|
+
**/
|
49
|
+
minValue: null,
|
50
|
+
|
51
|
+
/** The maximum allowed value, when the component
|
52
|
+
* utilizes value ranges. See setValueRange
|
53
|
+
**/
|
54
|
+
maxValue: null,
|
55
|
+
|
56
|
+
/** A boolean value that shows whether this control is currently
|
57
|
+
* active or not. Control gets active when the user clicks on it.
|
58
|
+
**/
|
59
|
+
active: null,
|
60
|
+
|
61
|
+
/** -- Use this object to specify class-specific default settings. ++
|
62
|
+
* The controlDefaults is a HControlDefaults object that is extended
|
63
|
+
* in the constructor with the options block given. The format of
|
64
|
+
* it is an Object.
|
65
|
+
**/
|
66
|
+
controlDefaults: HControlDefaults,
|
67
|
+
|
68
|
+
/** = Description
|
69
|
+
* The constructor of HControl implements the same model as HView,
|
70
|
+
* but accepts a third parameter: the options object, that contain
|
71
|
+
* optional properties, like the value and events.
|
72
|
+
*
|
73
|
+
* = Parameters
|
74
|
+
* +_rect+:: An instance of +HRect+, defines the position and size of views.
|
75
|
+
* It can be also defined with an array, see below.
|
76
|
+
* +_parent+:: The parent instance this instance will be contained within.
|
77
|
+
* A valid parent can be another HView compatible instance,
|
78
|
+
* an HApplication instance, a HControl or a similar extended
|
79
|
+
* HView instance. The origin of the +_rect+ is the same as the
|
80
|
+
* parent's offset. For HApplication instances, the web browser's
|
81
|
+
* window's left top corner is the origin.
|
82
|
+
* +_options+:: Optional, all other parameters as object attributes.
|
83
|
+
* Defaults to an instance of +HControlDefaults+, see controlDefaults
|
84
|
+
*
|
85
|
+
* == The +_rect+ dimensions as arrays
|
86
|
+
* Instead of an instance of +HRect+, dimensions can also be supplied as arrays.
|
87
|
+
* The array length must be either 4 or 6. If the length is 4, the dimensions are
|
88
|
+
* specified as follows: +[ x, y, width, height ]+. Note that this is different
|
89
|
+
* from the construction parameters of +HRect+ that takes the coordinates as two
|
90
|
+
* points, like: +( left, top, right, bottom )+.
|
91
|
+
* Arrays with 6 items are a bit more complex (and powerful) as they can specify
|
92
|
+
* the flexible offsets too.
|
93
|
+
*
|
94
|
+
* === The array indexes for a +_rect+ configured as an 4-item array:
|
95
|
+
* Always left/top aligned, all items must be specified.
|
96
|
+
* Index:: Description
|
97
|
+
* +0+:: The X-coordinate (measured from the parent's left edge)
|
98
|
+
* +1+:: The Y-coordinate (measured from the parent's top edge)
|
99
|
+
* +2+:: The width.
|
100
|
+
* +3+:: The height.
|
101
|
+
*
|
102
|
+
* === The array indexes a +_rect+ configured as an 6-item array:
|
103
|
+
* Can be any configuration of left/top/right/bottom alignment and supports
|
104
|
+
* flexible widths. At least 4 items must be specified.
|
105
|
+
* Index:: Description
|
106
|
+
* +0+:: The left-aligned X-coordinate or +null+ if the view is
|
107
|
+
* right-aligned and using a right-aligned X-coordinate at
|
108
|
+
* index +4+ as well as the width specified at index +2+.
|
109
|
+
* +1+:: The top-aligned Y-coordinate or +null+ if the view is
|
110
|
+
* bottom-aligned and using a right-aligned X-coordinate at
|
111
|
+
* index +5+ as well as the height specified at index +3+.
|
112
|
+
* +2+:: The width, if only one X-coordinate specifies the
|
113
|
+
* position (at indexes +0+ or +4+).
|
114
|
+
* If both X-coordinates (at indexes +0+ and +4+) are
|
115
|
+
* specified, the width can be specified with a +null+ for
|
116
|
+
* automatic (flexible) width. If the width is specified,
|
117
|
+
* it's used as the minimum width.
|
118
|
+
* +3+:: The height, if only one Y-coordinate specifies the
|
119
|
+
* position (at indexes +1+ or +5+).
|
120
|
+
* If both Y-coordinates (at indexes +1+ and +5+) are
|
121
|
+
* specified, the height can be specified with a +null+ for
|
122
|
+
* automatic (flexible) height. if the height is specified,
|
123
|
+
* it's used as the minimum height.
|
124
|
+
* +4+:: The right-aligned X-coordinate or +null+ if the view is
|
125
|
+
* left-aligned and using a left-aligned X-coordinate at
|
126
|
+
* index +0+ as well as the width specified at index +2+.
|
127
|
+
* +5+:: The bottom-aligned Y-coordinate or +null+ if the view is
|
128
|
+
* top-aligned and using a top-aligned X-coordinate at
|
129
|
+
* index +1+ as well as the height specified at index +3+.
|
130
|
+
* == Usage examples of +_rect+:
|
131
|
+
* Specified as two instances of +HPoint+,
|
132
|
+
* x: 23, y: 75, width: 200, height: 100:
|
133
|
+
* HRect.nu( HPoint.nu( 23, 75 ), HPoint.nu( 223, 175 ) )
|
134
|
+
*
|
135
|
+
* The same as above, but without +HPoint+ instances:
|
136
|
+
* HRect.nu( 23, 75, 223, 175 )
|
137
|
+
*
|
138
|
+
* The same as above, but with an array as the constructor
|
139
|
+
* parameter for +HRect+:
|
140
|
+
* HRect.nu( [ 23, 75, 223, 175 ] )
|
141
|
+
*
|
142
|
+
* The same as above, but with an array instead of a +HRect+ instance:
|
143
|
+
* [ 23, 75, 200, 100 ]
|
144
|
+
*
|
145
|
+
* The same as above, but with a 6-item array:
|
146
|
+
* [ 23, 75, 200, 100, null, null ]
|
147
|
+
*
|
148
|
+
* The same as above, but aligned to the right instead of left:
|
149
|
+
* [ null, 75, 200, 100, 23, null ]
|
150
|
+
*
|
151
|
+
* The same as above, but aligned to the right/bottom edges:
|
152
|
+
* [ null, null, 200, 100, 23, 75 ]
|
153
|
+
*
|
154
|
+
* The same as above, but aligned to the left/bottom edges:
|
155
|
+
* [ 23, null, 200, 100, null, 75 ]
|
156
|
+
*
|
157
|
+
* Flexible width (based on the parent's dimensions):
|
158
|
+
* [ 23, 75, null, 100, 23, null ]
|
159
|
+
*
|
160
|
+
* Flexible height (based on the parent's dimensions):
|
161
|
+
* [ 23, 75, 200, null, null, 75 ]
|
162
|
+
*
|
163
|
+
* Flexible width and height (based on the parent's dimensions):
|
164
|
+
* [ 23, 75, null, null, 23, 75 ]
|
165
|
+
*
|
166
|
+
* Flexible width and height, but limited to a minimum width
|
167
|
+
* of 200 and a minimum height of 100 (based on the parent's dimensions):
|
168
|
+
* [ 23, 75, 200, 100, 23, 75 ]
|
169
|
+
*
|
170
|
+
* == The +_options+ Object, all options are optional and default to what's
|
171
|
+
* defined in +controlDefaults+.
|
172
|
+
* Key:: Description
|
173
|
+
* +value+:: The initial value of the component. It's type and meaning
|
174
|
+
* differs between components.
|
175
|
+
* +valueObj+:: An HValue instance to bind immediately. The value of the
|
176
|
+
* HValue instance overrides the +value+ option.
|
177
|
+
* +label+:: The label of the component. It's usually a text (or html)
|
178
|
+
* String. Its meaning differs between components.
|
179
|
+
* See +#setLabel+ and +#refreshLabel+
|
180
|
+
* +visible+:: A Boolean value defining the initial visibility of the
|
181
|
+
* component. A true value means visible and false means
|
182
|
+
* hidden.
|
183
|
+
* +events+:: An Object containing the events to listen to.
|
184
|
+
* See setEvents and EVENT
|
185
|
+
* +enabled+:: A Boolean value defining the initial enabled -state
|
186
|
+
* of the component. Set to false to initially disable the
|
187
|
+
* component. See setEnabled
|
188
|
+
* +active+:: A Boolean value defining the initial active (clicked
|
189
|
+
* or focused) state of the component.
|
190
|
+
* +minValue+:: A Number for components utilizing value ranges.
|
191
|
+
* See setValueRange
|
192
|
+
* +maxValue+:: A Number for components utilizing value ranges.
|
193
|
+
* See setValueRange
|
194
|
+
*
|
195
|
+
*
|
196
|
+
**/
|
197
|
+
constructor: function(_rect, _parent, _options) {
|
198
|
+
if(!_options) {
|
199
|
+
_options = {};
|
200
|
+
}
|
201
|
+
var _this = this;
|
202
|
+
|
203
|
+
_options = (_this.controlDefaults.extend(_options)).nu(this);
|
204
|
+
|
205
|
+
if(_this.isinherited) {
|
206
|
+
_this.base(_rect, _parent, _options);
|
207
|
+
}
|
208
|
+
else {
|
209
|
+
_this.isinherited = true;
|
210
|
+
_this.base(_rect, _parent, _options);
|
211
|
+
_this.isinherited = false;
|
212
|
+
}
|
213
|
+
|
214
|
+
var _isValueRange = (_options.minValue || _options.maxValue),
|
215
|
+
_events = _options.events;
|
216
|
+
|
217
|
+
if(_isValueRange) {
|
218
|
+
_this.minValue = _options.minValue;
|
219
|
+
_this.maxValue = _options.maxValue;
|
220
|
+
}
|
221
|
+
|
222
|
+
_this.setEvents(_events);
|
223
|
+
_this.setEnabled(_options.enabled);
|
224
|
+
|
225
|
+
if(_options.valueObj){
|
226
|
+
_options.valueObj.bind(_this);
|
227
|
+
}
|
228
|
+
else if(!_this.valueObj) {
|
229
|
+
_this.valueObj = HDummyValue.nu();
|
230
|
+
}
|
231
|
+
|
232
|
+
if((_this.value===null)&&(_options.value!==undefined)) {
|
233
|
+
_this.setValue(_options.value);
|
234
|
+
}
|
235
|
+
if(_isValueRange) {
|
236
|
+
_this.setValueRange(this.value, _options.minValue, _options.maxValue);
|
237
|
+
}
|
238
|
+
if(!_this.isinherited) {
|
239
|
+
_this.draw();
|
240
|
+
}
|
241
|
+
},
|
242
|
+
|
243
|
+
/** = Description
|
244
|
+
* The destructor of +HControl+ instances.
|
245
|
+
* Releases events and values before passing through to the base HView.die.
|
246
|
+
* Extend it, you you allocate new instance members that need to be
|
247
|
+
* deallocated upon destruction.
|
248
|
+
*
|
249
|
+
**/
|
250
|
+
die: function() {
|
251
|
+
var _this = this;
|
252
|
+
if(_this.valueObj){
|
253
|
+
_this.valueObj.unbind(_this);
|
254
|
+
_this.valueObj = null;
|
255
|
+
}
|
256
|
+
EVENT.unreg(_this);
|
257
|
+
_this.base();
|
258
|
+
},
|
259
|
+
|
260
|
+
/** = Description
|
261
|
+
* Assigns the object a new value range. Used for sliders, steppers etc. Calls
|
262
|
+
* setValue with the value given.
|
263
|
+
*
|
264
|
+
* = Parameters
|
265
|
+
* +_value+:: The new value to be set to the component's
|
266
|
+
* HValue compatible instance.
|
267
|
+
*
|
268
|
+
* +_minValue+:: The new minimum value limit. See minValue.
|
269
|
+
*
|
270
|
+
* +_maxValue+:: The new maximum value limit. See maxValue.
|
271
|
+
*
|
272
|
+
* = Returns
|
273
|
+
* +self+
|
274
|
+
*
|
275
|
+
**/
|
276
|
+
setValueRange: function(_value, _minValue, _maxValue) {
|
277
|
+
this.minValue = _minValue;
|
278
|
+
this.maxValue = _maxValue;
|
279
|
+
_value = (_value < _minValue) ? _minValue : _value;
|
280
|
+
_value = (_value > _maxValue) ? _maxValue : _value;
|
281
|
+
this.setValue(_value);
|
282
|
+
return this;
|
283
|
+
},
|
284
|
+
|
285
|
+
/** = Description
|
286
|
+
* Called when the +self.value+ has been changed. By default
|
287
|
+
* tries to update the value element defined in the theme of
|
288
|
+
* the component. Of course, the HControl itself doesn't
|
289
|
+
* define a theme, so without a theme doesn't do anything.
|
290
|
+
*
|
291
|
+
* = Returns
|
292
|
+
* +self+
|
293
|
+
*
|
294
|
+
**/
|
295
|
+
refreshValue: function(){
|
296
|
+
if(this.markupElemIds){
|
297
|
+
if(this.markupElemIds['value']){
|
298
|
+
ELEM.setHTML(this.markupElemIds.value,this.value);
|
299
|
+
}
|
300
|
+
}
|
301
|
+
return this;
|
302
|
+
},
|
303
|
+
|
304
|
+
/** = Description
|
305
|
+
* Called mostly internally whenever a property change requires usually visual
|
306
|
+
* action. It's called by methods like setLabel and setValue.
|
307
|
+
* Extends HView.refresh. The boolean properties refreshOnValueChange and
|
308
|
+
* refreshOnLabelChange control whether refreshValue or refreshLabel
|
309
|
+
* should be called. It's used as-is in most components. If you implement
|
310
|
+
* your class extension with properties similar to value or label,
|
311
|
+
* you are advised to extend the refresh method.
|
312
|
+
*
|
313
|
+
* = Returns
|
314
|
+
* +self+
|
315
|
+
*
|
316
|
+
**/
|
317
|
+
refresh: function(){
|
318
|
+
this.base();
|
319
|
+
if(this.drawn){
|
320
|
+
if(this.refreshOnValueChange){
|
321
|
+
this.refreshValue();
|
322
|
+
}
|
323
|
+
}
|
324
|
+
return this;
|
325
|
+
}
|
326
|
+
},
|
327
|
+
|
328
|
+
{
|
329
|
+
|
330
|
+
// The CSS class name to set when the component is disabled
|
331
|
+
CSS_DISABLED: "disabled",
|
332
|
+
|
333
|
+
// The CSS class name to set when the component is enabled
|
334
|
+
CSS_ENABLED: "enabled",
|
335
|
+
|
336
|
+
// The CSS class name to set when the component is active (clicked/focused)
|
337
|
+
CSS_ACTIVE: "active"
|
338
|
+
|
339
|
+
});
|
340
|
+
|
341
|
+
HControl.implement( HValueResponder );
|
342
|
+
HControl.implement( HEventResponder );
|
@@ -0,0 +1,59 @@
|
|
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
|
+
** Define default setting here. Will be used, when no or invalid constructor
|
11
|
+
** options are supplied.
|
12
|
+
***/
|
13
|
+
HControlDefaults = HClass.extend({
|
14
|
+
|
15
|
+
/** The default label. A label is the "visual value" of a component that
|
16
|
+
* operates on a "hidden" value.
|
17
|
+
**/
|
18
|
+
label: "",
|
19
|
+
|
20
|
+
/** The default initial visibility of the component.
|
21
|
+
**/
|
22
|
+
visible: true,
|
23
|
+
|
24
|
+
/** The default initial event responders to register to a component.
|
25
|
+
* By default no events are enabled.
|
26
|
+
**/
|
27
|
+
events: null,
|
28
|
+
|
29
|
+
constructor: function(){
|
30
|
+
if(!this.events){
|
31
|
+
this.events = {};
|
32
|
+
}
|
33
|
+
},
|
34
|
+
|
35
|
+
/** The default initial value of the component.
|
36
|
+
**/
|
37
|
+
value: 0,
|
38
|
+
|
39
|
+
/** The default initial enabled state of the component.
|
40
|
+
**/
|
41
|
+
enabled: true,
|
42
|
+
|
43
|
+
/** The default initial active state of the component.
|
44
|
+
**/
|
45
|
+
active: false,
|
46
|
+
|
47
|
+
/** The default initial minimum value of the component.
|
48
|
+
**/
|
49
|
+
minValue: -2147483648,
|
50
|
+
|
51
|
+
/** The default initial maximum value of the component.
|
52
|
+
**/
|
53
|
+
maxValue: 2147483648
|
54
|
+
|
55
|
+
});
|
56
|
+
|
57
|
+
// Alias for backwards-compatibility.
|
58
|
+
HComponentDefaults = HControlDefaults;
|
59
|
+
|
File without changes
|
@@ -0,0 +1,50 @@
|
|
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 HDummyValue is just a placeholder for HValue values. HDummyValue
|
11
|
+
** is a light-weight alternative that doesn't implement any actual HValue
|
12
|
+
** functionality, but implements the essential methods and keeps the HControl
|
13
|
+
** content when an actual HValue instance isn't bound.
|
14
|
+
** It's the default valueObj type for components not bound to real HValue instances.
|
15
|
+
***/
|
16
|
+
HDummyValue = HClass.extend({
|
17
|
+
|
18
|
+
/** = Description
|
19
|
+
* HDummyValue is initialized just like a real HValue.
|
20
|
+
*
|
21
|
+
* = Parameters
|
22
|
+
* +_id+:: Any string or integer, just a placeholder for HValue.id
|
23
|
+
* +_value+:: Any valid js object, just as for HValue.value
|
24
|
+
*
|
25
|
+
**/
|
26
|
+
constructor: function(_id, _value) {
|
27
|
+
this.id = _id;
|
28
|
+
this.value = _value;
|
29
|
+
},
|
30
|
+
|
31
|
+
/** Sets a new instance payload value.
|
32
|
+
**/
|
33
|
+
set: function(_value) {
|
34
|
+
this.value = _value;
|
35
|
+
},
|
36
|
+
|
37
|
+
/** Returns the instance payload value.
|
38
|
+
**/
|
39
|
+
get: function() {
|
40
|
+
return this.value;
|
41
|
+
},
|
42
|
+
|
43
|
+
/** Binds HControl, does actually nothing.
|
44
|
+
**/
|
45
|
+
bind: function( _theObj ){},
|
46
|
+
|
47
|
+
/** Unbinds (releases) HControl, does actually nothing.
|
48
|
+
**/
|
49
|
+
unbind: function( _theObj ){}
|
50
|
+
});
|