rsence-pre 3.0.0.8 → 3.0.0.9
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.
- checksums.yaml +4 -4
- data/VERSION +1 -1
- data/client/conf/client_pkg.yaml +6 -2
- data/client/js/comm/queue/queue.js +32 -44
- data/client/js/comm/transporter/transporter.js +24 -16
- data/client/js/comm/values/values.js +27 -15
- data/client/js/controls/button/button.coffee +14 -5
- data/client/js/controls/button/themes/default/button.css +4 -2
- data/client/js/controls/checkbox/checkbox.js +4 -4
- data/client/js/controls/dialogs/sheet/sheet.js +11 -11
- data/client/js/controls/dialogs/sheet/themes/default/sheet.html +1 -1
- data/client/js/controls/imageview/imageview.js +15 -15
- data/client/js/controls/numerictextcontrol/numerictextcontrol.coffee +32 -10
- data/client/js/controls/onoffbutton/onoffbutton.coffee +5 -5
- data/client/js/controls/progress/progressbar/progressbar.js +6 -7
- data/client/js/controls/progress/progressbar/themes/default/progressbar.css +4 -4
- data/client/js/controls/progress/progressbar/themes/default/progressbar.html +1 -2
- data/client/js/controls/sliders/slider/slider.js +74 -79
- data/client/js/controls/stepper/stepper.js +31 -31
- data/client/js/controls/stringview/stringview.js +20 -8
- data/client/js/controls/tab/tab.js +57 -63
- data/client/js/controls/tab/themes/default/tab.html +4 -1
- data/client/js/controls/textcontrol/textcontrol.coffee +13 -3
- data/client/js/controls/validatorview/validatorview.js +4 -4
- data/client/js/controls/window/window.js +43 -56
- data/client/js/core/class/class.js +25 -23
- data/client/js/core/elem/elem.coffee +8 -1
- data/client/js/core/rsence_ns/rsence_ns.coffee +6 -2
- data/client/js/core/util/util_methods/util_methods.coffee +57 -15
- data/client/js/datetime/calendar/calendar.coffee +196 -199
- data/client/js/datetime/calendar/themes/default/calendar.css +81 -159
- data/client/js/datetime/calendar/themes/default/calendar.html +9 -18
- data/client/js/datetime/datepicker/datepicker.coffee +18 -3
- data/client/js/datetime/datetimepicker/datetimepicker.coffee +6 -1
- data/client/js/datetime/datetimevalue/datetimevalue.coffee +194 -0
- data/client/js/datetime/momentjs/momentjs.js +310 -76
- data/client/js/datetime/timepicker/timepicker.coffee +6 -1
- data/client/js/datetime/timesheet/timesheet.js +59 -61
- data/client/js/foundation/control/control.js +45 -44
- data/client/js/foundation/control/controldefaults/controldefaults.js +13 -9
- data/client/js/foundation/control/dyncontrol/dyncontrol.js +45 -57
- data/client/js/foundation/control/eventresponder/eventresponder.js +97 -97
- data/client/js/foundation/control/valuematrix/valuematrix.js +13 -13
- data/client/js/foundation/eventmanager/eventmanager.coffee +50 -32
- data/client/js/foundation/geom/rect/rect.js +43 -32
- data/client/js/foundation/locale_settings/locale_settings.js +36 -25
- data/client/js/foundation/system/system.js +79 -67
- data/client/js/foundation/thememanager/thememanager.coffee +11 -1
- data/client/js/foundation/value/pullvalue/pullvalue.coffee +7 -0
- data/client/js/foundation/value/pushvalue/pushvalue.coffee +25 -0
- data/client/js/foundation/value/value.js +22 -15
- data/client/js/foundation/view/view.js +94 -55
- data/client/js/foundation/view/viewdefaults/viewdefaults.js +5 -1
- data/client/js/lists/listitems/listitems.js +26 -4
- data/client/js/menus/combobox/combobox.coffee +55 -0
- data/client/js/menus/minimenu/minimenu.js +61 -30
- data/client/js/menus/minimenu/themes/default/minimenu.css +1 -6
- data/client/js/menus/minimenu/themes/default/minimenu.html +5 -4
- data/client/js/menus/minimenuitem/minimenuitem.js +6 -6
- data/client/js/menus/popupmenu/themes/default/popupmenu.css +1 -6
- data/client/js/menus/popupmenu/themes/default/popupmenu.html +5 -4
- data/client/js/tables/table/table.coffee +109 -64
- data/client/js/tables/table/themes/default/table.css +4 -0
- data/lib/rsence/msg.rb +64 -64
- data/lib/rsence/plugins/plugin.rb +68 -52
- data/lib/rsence/session/sequel_sessionstorage.rb +5 -5
- data/lib/rsence/value.rb +79 -59
- data/plugins/client_pkg/lib/client_pkg_build.rb +5 -1
- data/plugins/client_pkg/lib/client_pkg_serve.rb +40 -32
- data/plugins/main/js/main.js +46 -28
- metadata +6 -8
- data/client/js/datetime/calendar/themes/default/calendar_arrows.png +0 -0
- data/client/js/datetime/calendar/themes/default/calendar_bg.png +0 -0
- data/client/js/datetime/calendar/themes/default/calendar_parts1.png +0 -0
- data/client/js/datetime/calendar/themes/default/calendar_parts2.png +0 -0
- data/client/js/datetime/datetimepicker/datetimepicker.js +0 -210
- data/client/js/datetime/datetimevalue/datetimevalue.js +0 -265
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 99b457f1d439877cd2926e8609e5c1545558534f
|
4
|
+
data.tar.gz: 5a20ca0ee688f859946145175fe0e7127bd87dca
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 28a2abfa6afa5e310262b3420cdbf99f4fee16d28fac1a15bb8a40a3cf1ec99bb27a787649ecf7864caeb6890504dfe4a4951513e279b12dcbf4e23de032564d
|
7
|
+
data.tar.gz: 1738b4fa751e468bc48d55f11ed29997695cb0723effb9f6401a69bb23b1854f2e812a2288ba2a2af7c8ae8a45dd9f3a2be117245f6f0fb9618bef72a55979ba
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
3.0.0.
|
1
|
+
3.0.0.9.pre
|
data/client/conf/client_pkg.yaml
CHANGED
@@ -17,8 +17,6 @@
|
|
17
17
|
# RSence.*
|
18
18
|
- rsence_ns
|
19
19
|
|
20
|
-
- locale_settings # HLocaleSettings
|
21
|
-
|
22
20
|
# RSence.Core
|
23
21
|
- class # HClass
|
24
22
|
- sha # SHA
|
@@ -26,6 +24,8 @@
|
|
26
24
|
- event # Event
|
27
25
|
- util_methods # UtilMethods
|
28
26
|
|
27
|
+
- locale_settings # HLocaleSettings
|
28
|
+
|
29
29
|
# RSence.Foundation
|
30
30
|
- system # HSystem
|
31
31
|
- valueresponder # HValueResponder
|
@@ -41,6 +41,9 @@
|
|
41
41
|
- autosync # ( automatic sync setup )
|
42
42
|
- values # COMM.Values
|
43
43
|
- value # HValue
|
44
|
+
- keyvalue # HKeyValue
|
45
|
+
- pushvalue # HPushValue
|
46
|
+
- pullvalue # HPullValue
|
44
47
|
- jsloader # COMM.JSLoader
|
45
48
|
- json_renderer # COMM.JSONRenderer
|
46
49
|
- valuematrix # HValueMatrixInterface & HValueMatrix
|
@@ -120,6 +123,7 @@
|
|
120
123
|
- minimenuitem # HMiniMenuItem
|
121
124
|
- popupmenu # HPopupMenu
|
122
125
|
- menuitem # HMenuItem
|
126
|
+
- combobox # HCombobox
|
123
127
|
|
124
128
|
tables:
|
125
129
|
- table # HTable
|
@@ -9,17 +9,17 @@
|
|
9
9
|
***/
|
10
10
|
//var//RSence.COMM
|
11
11
|
COMM.Queue = HApplication.extend({
|
12
|
-
|
12
|
+
|
13
13
|
/** The constructor takes no arguments and starts queue flushing automatically.
|
14
14
|
**/
|
15
15
|
constructor: function(){
|
16
|
-
|
16
|
+
|
17
17
|
// The queue itself, is packed with anonymous functions
|
18
18
|
this.commandQueue = [];
|
19
|
-
|
19
|
+
|
20
20
|
// Flag to signal the pause and resume status.
|
21
21
|
this.paused = false;
|
22
|
-
|
22
|
+
|
23
23
|
// Run with priority 10; not too demanding but not too sluggish either
|
24
24
|
this.base(10);
|
25
25
|
|
@@ -30,7 +30,7 @@ COMM.Queue = HApplication.extend({
|
|
30
30
|
this._headElem = document.getElementsByTagName('head')[0];
|
31
31
|
}
|
32
32
|
},
|
33
|
-
|
33
|
+
|
34
34
|
/** Checks periodically, if the queue needs flushing.
|
35
35
|
**/
|
36
36
|
onIdle: function(){
|
@@ -38,7 +38,7 @@ COMM.Queue = HApplication.extend({
|
|
38
38
|
// empty and the state is not resumed:
|
39
39
|
!this.paused && this.commandQueue.length !== 0 && this.flush();
|
40
40
|
},
|
41
|
-
|
41
|
+
|
42
42
|
/** = Description
|
43
43
|
* Pauses the queue.
|
44
44
|
*
|
@@ -51,7 +51,7 @@ COMM.Queue = HApplication.extend({
|
|
51
51
|
pause: function(){
|
52
52
|
this.paused = true;
|
53
53
|
},
|
54
|
-
|
54
|
+
|
55
55
|
/** = Description
|
56
56
|
* Resumes queue flushing.
|
57
57
|
*
|
@@ -64,7 +64,7 @@ COMM.Queue = HApplication.extend({
|
|
64
64
|
this.paused = false;
|
65
65
|
this.flush();
|
66
66
|
},
|
67
|
-
|
67
|
+
|
68
68
|
/** A Group of localizable strings; errors and warnings.
|
69
69
|
**/
|
70
70
|
STRINGS: {
|
@@ -87,7 +87,7 @@ COMM.Queue = HApplication.extend({
|
|
87
87
|
].join('');
|
88
88
|
return _errorText;
|
89
89
|
},
|
90
|
-
|
90
|
+
|
91
91
|
/** = Description
|
92
92
|
* Flushes the queue until stopped.
|
93
93
|
*
|
@@ -96,23 +96,25 @@ COMM.Queue = HApplication.extend({
|
|
96
96
|
*
|
97
97
|
**/
|
98
98
|
flush: function(){
|
99
|
-
var
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
99
|
+
var
|
100
|
+
i = 0, // current index in the for-loop.
|
101
|
+
_item, // the current item to execute
|
102
|
+
_function, // the function to run
|
103
|
+
_arguments, // the arguments of the function
|
104
|
+
_startTime = this.msNow(),
|
105
|
+
_len = this.commandQueue.length; // the length of the queue
|
106
|
+
|
105
107
|
// Iterates through the items.
|
106
108
|
for(;i<_len;i++){
|
107
|
-
|
108
|
-
// Checks that the queue hasn't been paused
|
109
|
+
|
110
|
+
// Checks that the queue hasn't been paused
|
109
111
|
if(this.paused){
|
110
112
|
break; // stops flushing, if paused.
|
111
113
|
}
|
112
|
-
|
114
|
+
|
113
115
|
// The first item in the queue is removed from the queue.
|
114
116
|
_item = this.commandQueue.shift();
|
115
|
-
|
117
|
+
|
116
118
|
// Execute the item, with arugments if the item
|
117
119
|
try{
|
118
120
|
if(typeof _item === 'function'){
|
@@ -124,18 +126,24 @@ COMM.Queue = HApplication.extend({
|
|
124
126
|
_function.apply(this,_arguments);
|
125
127
|
}
|
126
128
|
}
|
127
|
-
|
129
|
+
|
128
130
|
// Displays an error message in the Javascript console, if failure.
|
129
131
|
catch(e){
|
130
132
|
this.clientException( e, _item );
|
131
133
|
}
|
134
|
+
|
135
|
+
if(this.msNow()-_startTime>250){
|
136
|
+
var _this = this; _this.pause();
|
137
|
+
setTimeout(function(){_this.resume();},0);
|
138
|
+
break;
|
139
|
+
}
|
132
140
|
}
|
133
141
|
},
|
134
|
-
|
142
|
+
|
135
143
|
/** = Description
|
136
144
|
* Adds an item to the beginning of the queue.
|
137
145
|
*
|
138
|
-
* Use to make the given +_function+ with its
|
146
|
+
* Use to make the given +_function+ with its
|
139
147
|
* optional +_arguments+ the next item to flush.
|
140
148
|
*
|
141
149
|
* = Parameters:
|
@@ -151,11 +159,11 @@ COMM.Queue = HApplication.extend({
|
|
151
159
|
this.commandQueue.unshift(_function);
|
152
160
|
}
|
153
161
|
},
|
154
|
-
|
162
|
+
|
155
163
|
/** = Description
|
156
164
|
* Adds an item to the end of the queue.
|
157
165
|
*
|
158
|
-
* Use to make the given +_function+ with its
|
166
|
+
* Use to make the given +_function+ with its
|
159
167
|
* optional +_arguments+ the last item to flush.
|
160
168
|
*
|
161
169
|
* = Parameters:
|
@@ -171,26 +179,6 @@ COMM.Queue = HApplication.extend({
|
|
171
179
|
this.commandQueue.push(_function);
|
172
180
|
}
|
173
181
|
},
|
174
|
-
|
175
|
-
/** Like +unshift+, but uses the code block as a string to be
|
176
|
-
* passed on as an evaluated anonymous function.
|
177
|
-
**/
|
178
|
-
unshiftEval: function(_evalStr,_arguments){
|
179
|
-
var _function;
|
180
|
-
console.log('WARNING: COMM.unshiftEval is deprecated; Update your code!');
|
181
|
-
eval('_function = function(){'+_evalStr+'}');
|
182
|
-
this.unshift(_function);
|
183
|
-
},
|
184
|
-
|
185
|
-
/** Like +push+, but uses the code block as a string to be
|
186
|
-
* passed on as an evaluated anonymous function.
|
187
|
-
**/
|
188
|
-
pushEval: function(_evalStr){
|
189
|
-
var _function;
|
190
|
-
console.log('WARNING: COMM.pushEval is deprecated; Update your code!');
|
191
|
-
eval('_function = function(){'+_evalStr+'}');
|
192
|
-
this.push(_function);
|
193
|
-
},
|
194
182
|
|
195
183
|
_scripts: {},
|
196
184
|
|
@@ -15,7 +15,7 @@
|
|
15
15
|
***/
|
16
16
|
//var//RSence.COMM
|
17
17
|
COMM.Transporter = HApplication.extend({
|
18
|
-
|
18
|
+
|
19
19
|
/** Sets up the default settings upon construction.
|
20
20
|
**/
|
21
21
|
constructor: function(){
|
@@ -42,7 +42,7 @@ COMM.Transporter = HApplication.extend({
|
|
42
42
|
}
|
43
43
|
}
|
44
44
|
},
|
45
|
-
|
45
|
+
|
46
46
|
/** Tries to (re)connect to the server as often as possible,
|
47
47
|
* mandated essentially by the priority of its
|
48
48
|
* HApplication instance.
|
@@ -50,7 +50,7 @@ COMM.Transporter = HApplication.extend({
|
|
50
50
|
onIdle: function(){
|
51
51
|
this.sync();
|
52
52
|
},
|
53
|
-
|
53
|
+
|
54
54
|
/** (Re)sets the priority of itself, effects how
|
55
55
|
* frequently +onIdle+ is called.
|
56
56
|
* Usually set by the server.
|
@@ -58,7 +58,7 @@ COMM.Transporter = HApplication.extend({
|
|
58
58
|
poll: function(_pri){
|
59
59
|
HSystem.reniceApp(this.appId,_pri);
|
60
60
|
},
|
61
|
-
|
61
|
+
|
62
62
|
/** Returns the last transaction error of itself. Used by +sync+
|
63
63
|
* to report js errors to the server.
|
64
64
|
* If no error, returns an empty string.
|
@@ -68,15 +68,15 @@ COMM.Transporter = HApplication.extend({
|
|
68
68
|
// return _this._clientEvalError?'&err_msg=' +
|
69
69
|
// COMM.Values._encodeString(_this._clientEvalError):'';
|
70
70
|
// },
|
71
|
-
|
71
|
+
|
72
72
|
parseResponseArray: function( _responseText ){
|
73
73
|
return this.decodeObject( _responseText );
|
74
74
|
},
|
75
|
-
|
75
|
+
|
76
76
|
_nativeParseResponseArray: function( _responseText ){
|
77
77
|
return JSON.parse( _responseText );
|
78
78
|
},
|
79
|
-
|
79
|
+
|
80
80
|
setValues: function( _values ){
|
81
81
|
if(!_values instanceof Object){
|
82
82
|
console.log("Invalid values block: ", _values );
|
@@ -84,21 +84,29 @@ COMM.Transporter = HApplication.extend({
|
|
84
84
|
}
|
85
85
|
var
|
86
86
|
i = 0,
|
87
|
+
_value,
|
88
|
+
_valueType,
|
87
89
|
_valueManager = COMM.Values,
|
88
90
|
_itemtype,
|
89
91
|
_valueId,
|
90
92
|
_valueData;
|
91
93
|
if(_values['new'] instanceof Array){
|
92
94
|
for(i=0;i<_values['new'].length;i++){
|
93
|
-
|
94
|
-
|
95
|
-
|
95
|
+
_value = _values['new'][i];
|
96
|
+
_valueId = _value[0];
|
97
|
+
_valueData = _value[1];
|
98
|
+
_valueType = 0;
|
99
|
+
if( _value.length === 3 ){
|
100
|
+
_valueType = _value[2];
|
101
|
+
}
|
102
|
+
_valueManager.create( _valueId, _valueData, _valueType );
|
96
103
|
}
|
97
104
|
}
|
98
105
|
if(_values.set instanceof Array){
|
99
106
|
for(i=0;i<_values.set.length;i++){
|
100
|
-
|
101
|
-
|
107
|
+
_value = _values.set[i];
|
108
|
+
_valueId = _value[0];
|
109
|
+
_valueData = _value[1];
|
102
110
|
_valueManager.s( _valueId, _valueData );
|
103
111
|
}
|
104
112
|
}
|
@@ -109,7 +117,7 @@ COMM.Transporter = HApplication.extend({
|
|
109
117
|
}
|
110
118
|
}
|
111
119
|
},
|
112
|
-
|
120
|
+
|
113
121
|
/** = Description
|
114
122
|
* Handles synchronization responses.
|
115
123
|
*
|
@@ -169,7 +177,7 @@ COMM.Transporter = HApplication.extend({
|
|
169
177
|
_this._serverInterruptView = false;
|
170
178
|
}
|
171
179
|
},
|
172
|
-
|
180
|
+
|
173
181
|
/** Sets the +busy+ flag to false and resynchronizes immediately,
|
174
182
|
* if COMM.Values contain any unsynchronized values.
|
175
183
|
**/
|
@@ -294,7 +302,7 @@ COMM.Transporter = HApplication.extend({
|
|
294
302
|
_this._serverInterruptView._setCustomColor(_customColor);
|
295
303
|
}
|
296
304
|
},
|
297
|
-
|
305
|
+
|
298
306
|
/** Called by the XMLHttpRequest, when there was a failure in communication.
|
299
307
|
**/
|
300
308
|
failure: function(_resp){
|
@@ -308,7 +316,7 @@ COMM.Transporter = HApplication.extend({
|
|
308
316
|
_this.failMessage('Transporter Error','Transporter was unable to complete the synchronization request.');
|
309
317
|
}
|
310
318
|
},
|
311
|
-
|
319
|
+
|
312
320
|
/** Starts requests.
|
313
321
|
**/
|
314
322
|
sync: function(){
|
@@ -6,19 +6,19 @@
|
|
6
6
|
***/
|
7
7
|
//var//RSence.COMM
|
8
8
|
COMM.Values = UtilMethods.extend({
|
9
|
-
|
9
|
+
|
10
10
|
/** No constructor, singleton class.
|
11
11
|
**/
|
12
12
|
constructor: null,
|
13
|
-
|
13
|
+
|
14
14
|
/** An +Object+ containing all values by key.
|
15
15
|
**/
|
16
16
|
values: {},
|
17
|
-
|
17
|
+
|
18
18
|
/** A list of value keys whose value has changed. To be synchronized asap.
|
19
19
|
**/
|
20
20
|
tosync: [],
|
21
|
-
|
21
|
+
|
22
22
|
/** = Description
|
23
23
|
* Creates a new +HValue+ instance. Its main purpose is to act as the main
|
24
24
|
* client-side value creation interface for the server representation of
|
@@ -27,12 +27,24 @@ COMM.Values = UtilMethods.extend({
|
|
27
27
|
* = Parameters
|
28
28
|
* +_id+:: The unique id of the +HValue+ instance (set by the server)
|
29
29
|
* +_data:: The initial data of the +HValue+ instance (set by the server)
|
30
|
+
* +_type:: The value type: 0=HValue, 1=HPushValue, 2=HPullValue
|
30
31
|
*
|
31
32
|
**/
|
32
|
-
create: function(_id,_data){
|
33
|
-
|
33
|
+
create: function(_id,_data,_type){
|
34
|
+
if(!_type){
|
35
|
+
HValue.nu(_id,_data);
|
36
|
+
}
|
37
|
+
else if(_type === 1){
|
38
|
+
HPushValue.nu(_id,_data);
|
39
|
+
}
|
40
|
+
else if(_type === 2){
|
41
|
+
HPullValue.nu(_id,_data);
|
42
|
+
}
|
43
|
+
else{
|
44
|
+
console.warn("Unknown value type:",_type);
|
45
|
+
}
|
34
46
|
},
|
35
|
-
|
47
|
+
|
36
48
|
/** = Description
|
37
49
|
* Binds a +HValue+ instance created externally to +self.values+.
|
38
50
|
* Called from +HValue+ upon construction.
|
@@ -45,7 +57,7 @@ COMM.Values = UtilMethods.extend({
|
|
45
57
|
add: function(_id,_value){
|
46
58
|
this.values[_id] = _value;
|
47
59
|
},
|
48
|
-
|
60
|
+
|
49
61
|
/** = Description
|
50
62
|
* Sets the data of the +HValue+ instance by +_Id+.
|
51
63
|
*
|
@@ -57,7 +69,7 @@ COMM.Values = UtilMethods.extend({
|
|
57
69
|
set: function(_id,_data){
|
58
70
|
this.values[_id].set(_data);
|
59
71
|
},
|
60
|
-
|
72
|
+
|
61
73
|
/** = Description
|
62
74
|
* Sets and decodes the +_data+. Main value setter interface
|
63
75
|
* for the server representation of +HValue+.
|
@@ -72,7 +84,7 @@ COMM.Values = UtilMethods.extend({
|
|
72
84
|
_data = _this.decode(_data);
|
73
85
|
_this.values[_id].s(_data);
|
74
86
|
},
|
75
|
-
|
87
|
+
|
76
88
|
/** = Description
|
77
89
|
* Deletes a +HValue+ instance by +_id+.
|
78
90
|
*
|
@@ -95,7 +107,7 @@ COMM.Values = UtilMethods.extend({
|
|
95
107
|
_value.views = [];
|
96
108
|
delete _values[_id];
|
97
109
|
},
|
98
|
-
|
110
|
+
|
99
111
|
/** = Description
|
100
112
|
* Marks the +HValue+ instance as changed and tries to send it
|
101
113
|
* immediately, unless COMM.Transporter has an ongoing transfer.
|
@@ -115,7 +127,7 @@ COMM.Values = UtilMethods.extend({
|
|
115
127
|
}
|
116
128
|
}
|
117
129
|
},
|
118
|
-
|
130
|
+
|
119
131
|
/** = Description
|
120
132
|
* Use this method to detect the type of the object given.
|
121
133
|
*
|
@@ -137,7 +149,7 @@ COMM.Values = UtilMethods.extend({
|
|
137
149
|
type: function(_obj){
|
138
150
|
return this.typeChr( _obj );
|
139
151
|
},
|
140
|
-
|
152
|
+
|
141
153
|
/** = Description
|
142
154
|
* Returns an URI-encoded string representation of all the changed values to
|
143
155
|
* synchronize to the server.
|
@@ -166,7 +178,7 @@ COMM.Values = UtilMethods.extend({
|
|
166
178
|
_id, _value;
|
167
179
|
while(i--){
|
168
180
|
_id = _tosync.shift();
|
169
|
-
_value = _values[_id].
|
181
|
+
_value = _values[_id].toSync();
|
170
182
|
_syncValues.push( [ _id, _value ] );
|
171
183
|
}
|
172
184
|
}
|
@@ -184,7 +196,7 @@ COMM.Values = UtilMethods.extend({
|
|
184
196
|
clone: function(_obj){
|
185
197
|
return this.cloneObject(_obj);
|
186
198
|
}
|
187
|
-
|
199
|
+
|
188
200
|
});
|
189
201
|
|
190
202
|
// Backwards compatibility assignment for code that still
|
@@ -8,7 +8,8 @@ HButton = HControl.extend
|
|
8
8
|
componentName: 'button'
|
9
9
|
optimizeWidthOnRefresh: true
|
10
10
|
controlDefaults: HControlDefaults.extend
|
11
|
-
defaultKeyClick: false
|
11
|
+
defaultKeyClick: false # use defaultResponder instead; it's a better name
|
12
|
+
defaultResponder: false
|
12
13
|
pack: false
|
13
14
|
|
14
15
|
defaultEvents:
|
@@ -27,7 +28,13 @@ HButton = HControl.extend
|
|
27
28
|
@
|
28
29
|
|
29
30
|
defaultKey: ->
|
30
|
-
if @options.defaultKeyClick
|
31
|
+
if @enabled and ( @options.defaultKeyClick or @options.defaultResponder )
|
32
|
+
if @options.defaultKeyClick and !@isProduction
|
33
|
+
console.warn("defaultKeyClick is deprecated; use defaultResponder instead (sorry)")
|
34
|
+
@setCSSClass('clickeffect')
|
35
|
+
@timeouts.push( setTimeout( =>
|
36
|
+
@unsetCSSClass('clickeffect')
|
37
|
+
, 200 ) )
|
31
38
|
@click()
|
32
39
|
return false
|
33
40
|
null
|
@@ -37,10 +44,12 @@ HButton = HControl.extend
|
|
37
44
|
|
38
45
|
refresh: ->
|
39
46
|
@base()
|
40
|
-
if @options.defaultKeyClick
|
41
|
-
@
|
47
|
+
if @options.defaultKeyClick or @options.defaultResponder
|
48
|
+
if @options.defaultKeyClick and !@isProduction
|
49
|
+
console.warn("defaultKeyClick is deprecated; use defaultResponder instead (sorry)")
|
50
|
+
@setCSSClass('action')
|
42
51
|
else
|
43
|
-
@
|
52
|
+
@unsetCSSClass('action')
|
44
53
|
|
45
54
|
labelPadding: 0
|
46
55
|
optimizeWidth: ->
|
@@ -21,7 +21,7 @@
|
|
21
21
|
.default.disabled > .button_control > .button_bg {
|
22
22
|
border-color: #ddd;
|
23
23
|
box-shadow: 0 0 3px #666;
|
24
|
-
opacity: 0.
|
24
|
+
opacity: 0.9;
|
25
25
|
#{this.gradientCSS('#d6d6d6',[66,'#d0d0d0'],[71,'#d3d3d3'],'#cccccc')}
|
26
26
|
}
|
27
27
|
.default > .button_control > .button_label {
|
@@ -36,7 +36,7 @@
|
|
36
36
|
color: #333;
|
37
37
|
}
|
38
38
|
.default.disabled > .button_control > .button_label {
|
39
|
-
color: #
|
39
|
+
color: #555;
|
40
40
|
}
|
41
41
|
|
42
42
|
.default.enabled.action > .button_control > .button_bg {
|
@@ -77,12 +77,14 @@
|
|
77
77
|
color: #000;
|
78
78
|
}
|
79
79
|
|
80
|
+
.default.enabled.action.clickeffect > .button_control > .button_bg,
|
80
81
|
.default.enabled.action > .button_control:active > .button_bg {
|
81
82
|
border: 1px solid #fff;
|
82
83
|
margin: -1px;
|
83
84
|
box-shadow: 0 0 3px #fff;
|
84
85
|
#{this.gradientCSS('#111',[29,'#333'],[33,'#333'],'#000')}
|
85
86
|
}
|
87
|
+
.default.enabled.action.clickeffect > .button_control:active > .button_label,
|
86
88
|
.default.enabled.action > .button_control:active > .button_label {
|
87
89
|
color: #fff;
|
88
90
|
text-shadow: 0 0 2px #000;
|
@@ -29,12 +29,12 @@ HCheckbox = HButton.extend({
|
|
29
29
|
refreshValue: function(){
|
30
30
|
if(this.markupElemIds.control){
|
31
31
|
if(this.value){
|
32
|
-
this.
|
33
|
-
this.
|
32
|
+
this.setCSSClass('control', 'checked');
|
33
|
+
this.unsetCSSClass('control', 'unchecked');
|
34
34
|
}
|
35
35
|
else{
|
36
|
-
this.
|
37
|
-
this.
|
36
|
+
this.unsetCSSClass('control', 'checked');
|
37
|
+
this.setCSSClass('control', 'unchecked');
|
38
38
|
}
|
39
39
|
}
|
40
40
|
}
|
@@ -1,29 +1,29 @@
|
|
1
1
|
|
2
2
|
/*** = Description
|
3
3
|
** HSheet is a container component that toggles its visibility
|
4
|
-
** based on its value. When the value is 0, it's visible, otherwise
|
4
|
+
** based on its value. When the value is 0, it's visible, otherwise
|
5
5
|
** it's hidden. It expands to fill its parent view.
|
6
|
-
**
|
6
|
+
**
|
7
7
|
** Its rect specifies the relative size and position of the centered inner
|
8
8
|
** sheet, which acts as a subview.
|
9
|
-
**
|
9
|
+
**
|
10
10
|
** It's practical when combined with button values.
|
11
|
-
**
|
11
|
+
**
|
12
12
|
** Also see HAlertSheet and HConfirmSheet components.
|
13
|
-
**
|
13
|
+
**
|
14
14
|
***/
|
15
15
|
var//RSence.Controls
|
16
16
|
HSheet = HControl.extend({
|
17
|
-
|
17
|
+
|
18
18
|
componentName: 'sheet',
|
19
19
|
|
20
20
|
defaultEvents: {
|
21
21
|
resize: true
|
22
22
|
},
|
23
|
-
|
23
|
+
|
24
24
|
/** = Description
|
25
25
|
* Shows of hides HSheet depending on the value.
|
26
|
-
* If the value is 0 the HSheet#show() will be called.
|
26
|
+
* If the value is 0 the HSheet#show() will be called.
|
27
27
|
* Otherwise HSheet#hide() is called.
|
28
28
|
*
|
29
29
|
**/
|
@@ -37,7 +37,7 @@ HSheet = HControl.extend({
|
|
37
37
|
},
|
38
38
|
|
39
39
|
/** = Description
|
40
|
-
* Draws the sheet rectangle once it has been created and
|
40
|
+
* Draws the sheet rectangle once it has been created and
|
41
41
|
* if it has not been set as hidden by constructor.
|
42
42
|
*
|
43
43
|
* = Returns
|
@@ -104,7 +104,7 @@ HSheet = HControl.extend({
|
|
104
104
|
// ELEM.del( this._dimmerElem );
|
105
105
|
// this.base();
|
106
106
|
// },
|
107
|
-
markupElemNames: [ 'dimmer', 'state', 'subview' ],
|
107
|
+
markupElemNames: [ 'dimmer', 'state', 'subview', 'bg' ],
|
108
108
|
|
109
109
|
centerRect: function(){
|
110
110
|
// console.log('centerRect');
|
@@ -134,6 +134,6 @@ HSheet = HControl.extend({
|
|
134
134
|
this.centerRect();
|
135
135
|
this.base();
|
136
136
|
}
|
137
|
-
|
137
|
+
|
138
138
|
});
|
139
139
|
|
@@ -1,6 +1,6 @@
|
|
1
1
|
<div class="sheet_dimmer" id="dimmer]I["></div>
|
2
2
|
<div class="sheet_content" id="state]I[">
|
3
|
-
<div class="sheet_bg"></div>
|
3
|
+
<div class="sheet_bg" id="bg]I["></div>
|
4
4
|
<div class="sheet_body">
|
5
5
|
<div class="sheet_body_edge_left"></div>
|
6
6
|
<div class="sheet_body_edge_right"></div>
|