rsence-pre 2.1.0.8.pre → 2.1.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.
- data/VERSION +1 -1
- data/js/controls/button/button.js +12 -2
- data/js/controls/stepper/stepper.js +12 -19
- data/js/controls/window/window.js +1 -1
- data/js/foundation/control/eventresponder/eventresponder.js +8 -7
- data/js/foundation/eventmanager/eventmanager.js +24 -18
- data/js/foundation/geom/rect/rect.js +1 -1
- data/js/foundation/system/system.js +1 -1
- data/js/foundation/view/view.js +18 -4
- data/js/lists/radiobuttonlist/radiobuttonlist.js +1 -1
- data/js/menus/minimenu/minimenu.js +2 -1
- data/lib/plugins/plugins.rb +9 -0
- metadata +5 -6
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
2.1.0.
|
1
|
+
2.1.0.9.pre
|
@@ -53,7 +53,12 @@ HClickButton = HButton.extend({
|
|
53
53
|
*
|
54
54
|
**/
|
55
55
|
refreshValue: function(){
|
56
|
-
|
56
|
+
if( this.options.inverseValue ){
|
57
|
+
this.setEnabled( this.value === 1 );
|
58
|
+
}
|
59
|
+
else {
|
60
|
+
this.setEnabled( this.value === 0 );
|
61
|
+
}
|
57
62
|
},
|
58
63
|
/** = Description
|
59
64
|
* Click method, sets the value to disabled if the button is enabled.
|
@@ -61,7 +66,12 @@ HClickButton = HButton.extend({
|
|
61
66
|
**/
|
62
67
|
click: function(){
|
63
68
|
if(this.enabled){
|
64
|
-
this.
|
69
|
+
if( this.options.inverseValue ){
|
70
|
+
this.setValue(0);
|
71
|
+
}
|
72
|
+
else {
|
73
|
+
this.setValue(1);
|
74
|
+
}
|
65
75
|
}
|
66
76
|
}
|
67
77
|
|
@@ -26,6 +26,7 @@ HStepper = HControl.extend({
|
|
26
26
|
|
27
27
|
defaultEvents: {
|
28
28
|
mouseDown: true,
|
29
|
+
click: true,
|
29
30
|
keyDown: true,
|
30
31
|
mouseWheel: true
|
31
32
|
},
|
@@ -101,17 +102,6 @@ HStepper = HControl.extend({
|
|
101
102
|
);
|
102
103
|
},
|
103
104
|
|
104
|
-
// -- Returns an action string for the setInterval in _setRepeatInterval ++
|
105
|
-
_repeatIntervalStr: function( _up ){
|
106
|
-
return [
|
107
|
-
'HSystem.views[',
|
108
|
-
this.viewId,
|
109
|
-
'].step',
|
110
|
-
(_up?'Up':'Down'),
|
111
|
-
'();'
|
112
|
-
].join('');
|
113
|
-
},
|
114
|
-
|
115
105
|
// -- Background-offset of the state images up/down,
|
116
106
|
// overrideable in the html template ++
|
117
107
|
bgStateUp: '0px -23px',
|
@@ -131,15 +121,13 @@ HStepper = HControl.extend({
|
|
131
121
|
_setRepeatInterval: function( _up ){
|
132
122
|
var _this = this,
|
133
123
|
_options = _this.options;
|
124
|
+
_this._repeatInterval && clearInterval( _this._repeatInterval );
|
134
125
|
_this._bgStateOn( _up );
|
135
|
-
|
136
|
-
|
137
|
-
_this.
|
138
|
-
|
139
|
-
|
140
|
-
_this.stepDown();
|
141
|
-
_this._repeatInterval = setInterval( _this._repeatIntervalStr(0), _options.repeatInterval );
|
142
|
-
}
|
126
|
+
_up?_this.stepUp():_this.stepDown();
|
127
|
+
_this._repeatInterval = setInterval(
|
128
|
+
_up?function(){_this.stepUp();}:function(){_this.stepDown();},
|
129
|
+
_options.repeatInterval
|
130
|
+
);
|
143
131
|
},
|
144
132
|
|
145
133
|
// Stops the repeating stepping up or down enabled in _setRepeatInterval
|
@@ -153,6 +141,7 @@ HStepper = HControl.extend({
|
|
153
141
|
mouseDown: function( x, y ){
|
154
142
|
this.setMouseUp(true);
|
155
143
|
this._setRepeatInterval( ( y - ELEM.getVisiblePosition( this.elemId )[1] ) <= 11 );
|
144
|
+
|
156
145
|
},
|
157
146
|
|
158
147
|
/** Stops the repeating stepping, when the mouse button goes up
|
@@ -161,6 +150,10 @@ HStepper = HControl.extend({
|
|
161
150
|
this._clearRepeatInterval();
|
162
151
|
},
|
163
152
|
|
153
|
+
click: function(){
|
154
|
+
this.mouseUp();
|
155
|
+
},
|
156
|
+
|
164
157
|
/** Stops the repeating stepping, when the control becomes inactive
|
165
158
|
**/
|
166
159
|
blur: function(){
|
@@ -241,7 +241,7 @@ HWindow = HDynControl.extend({
|
|
241
241
|
for( ; i < _views.length; i++ ){
|
242
242
|
_view = HSystem.views[_views[i]];
|
243
243
|
_size = ELEM.getSize(_view.elemId);
|
244
|
-
_pos = ELEM.
|
244
|
+
_pos = ELEM.getVisiblePosition(_view.elemId);
|
245
245
|
_right = _size[0]+_pos[0]-this.pageX();
|
246
246
|
_bottom = _size[1]+_pos[1]-this.pageY();
|
247
247
|
if(_right > _fitsRect.width){
|
@@ -174,13 +174,14 @@ HEventResponder = HClass.extend({
|
|
174
174
|
**/
|
175
175
|
setEnabled: function(_flag) {
|
176
176
|
|
177
|
-
var
|
178
|
-
|
179
|
-
|
180
|
-
|
181
|
-
|
182
|
-
|
183
|
-
|
177
|
+
var
|
178
|
+
_this = this,
|
179
|
+
_elemId = this.elemId,
|
180
|
+
_sysViews = HSystem.views,
|
181
|
+
i = 0,
|
182
|
+
_views = _this.views,
|
183
|
+
_view,
|
184
|
+
_viewsLen = _views.length;
|
184
185
|
|
185
186
|
// Enable/disable the children first.
|
186
187
|
for (; i < _viewsLen; i++) {
|
@@ -210,21 +210,23 @@ EVENT = {
|
|
210
210
|
/** Registers the _ctrl object by event listener flags in _focusOptions.
|
211
211
|
**/
|
212
212
|
reg: function(_ctrl, _focusOptions) {
|
213
|
-
var
|
214
|
-
_elem,
|
215
|
-
_this = EVENT,
|
216
|
-
_propIn;
|
213
|
+
var
|
217
214
|
// Binds the class to the element (so it can be called on the event)
|
218
|
-
_elemId = _ctrl.elemId
|
219
|
-
_elem = ELEM.get(_elemId)
|
215
|
+
_elemId = _ctrl.elemId,
|
216
|
+
_elem = ELEM.get(_elemId),
|
217
|
+
_this = EVENT,
|
218
|
+
_propIn,
|
219
|
+
_init = ( _this.listeners[_elemId] === undefined || _this.listeners[_elemId] === false );
|
220
220
|
if (BROWSER_TYPE.ie) {
|
221
221
|
_elem.setAttribute('ctrl', _ctrl);
|
222
222
|
}
|
223
223
|
else {
|
224
224
|
_elem.ctrl = _ctrl;
|
225
225
|
}
|
226
|
-
|
227
|
-
|
226
|
+
if(_init){
|
227
|
+
_this.listeners[_elemId] = true;
|
228
|
+
_this.focused[_elemId] = false;
|
229
|
+
}
|
228
230
|
for (_propIn in _this._defaultFocusOptions) {
|
229
231
|
if (_focusOptions[_propIn] === undefined) {
|
230
232
|
_focusOptions[_propIn] = _defaultFocusOptions[_propIn];
|
@@ -264,7 +266,9 @@ EVENT = {
|
|
264
266
|
_this.resizeListeners.splice(_resizeIndex,1);
|
265
267
|
}
|
266
268
|
}
|
267
|
-
|
269
|
+
if(_init){
|
270
|
+
Event.observe(_elem, 'mouseover', _this._mouseOver);
|
271
|
+
}
|
268
272
|
if(_ctrl.drawn){
|
269
273
|
_this._updateHoverItems();
|
270
274
|
(_this.hovered.length !== 0) && (_this.hovered.indexOf(_ctrl.elemId) === _this.hovered.length-1) && _this.focus(_ctrl);
|
@@ -274,9 +278,10 @@ EVENT = {
|
|
274
278
|
/** Unregisters the _ctrl object event listeners
|
275
279
|
**/
|
276
280
|
unreg: function(_ctrl) {
|
277
|
-
var
|
278
|
-
|
279
|
-
|
281
|
+
var
|
282
|
+
_this = EVENT,
|
283
|
+
_elemId,
|
284
|
+
_elem;
|
280
285
|
if (_ctrl === this.activeControl) {
|
281
286
|
_this.changeActiveControl(null);
|
282
287
|
}
|
@@ -734,7 +739,7 @@ EVENT = {
|
|
734
739
|
// if it's no longer the active control.
|
735
740
|
_prevActiveCtrl = _this.activeControl;
|
736
741
|
// Did the active control change?
|
737
|
-
if ((_ctrl !== _prevActiveCtrl) && (_ctrl._gainedActiveStatus || _prevActiveCtrl._lostActiveStatus)) {
|
742
|
+
if (_ctrl && (_ctrl !== _prevActiveCtrl) && (_ctrl._gainedActiveStatus || _prevActiveCtrl._lostActiveStatus)) {
|
738
743
|
if (_prevActiveCtrl && _prevActiveCtrl._lostActiveStatus) {
|
739
744
|
// Previously active control just lost the active status.
|
740
745
|
_prevActiveCtrl.active = false;
|
@@ -785,7 +790,7 @@ EVENT = {
|
|
785
790
|
for (; i !== _this.dragItems.length; i++) {
|
786
791
|
_elemId = _this.dragItems[i];
|
787
792
|
_ctrl = _this.focusOptions[_elemId].ctrl;
|
788
|
-
_ctrl.endDrag(x, y,_isLeftButton);
|
793
|
+
_ctrl.endDrag(x, y, _isLeftButton);
|
789
794
|
_didEndDrag = true;
|
790
795
|
// If the mouse slipped off the dragged item before the mouse button was released, blur the item manually
|
791
796
|
if (_this.enableDroppableChecks) {
|
@@ -808,10 +813,11 @@ EVENT = {
|
|
808
813
|
document.onselectstart = _this._storedOnSelectStart;
|
809
814
|
}
|
810
815
|
// Check for mouseUp listeners.
|
811
|
-
for (i = 0; i
|
816
|
+
for (i = 0; i < _this.focused.length; i++) {
|
812
817
|
if (_this.focused[i] === true) {
|
818
|
+
_ctrl = _this.focusOptions[i].ctrl;
|
813
819
|
if (_this.focusOptions[i].mouseUp === true) {
|
814
|
-
|
820
|
+
_ctrl.mouseUp(x, y, _isLeftButton);
|
815
821
|
}
|
816
822
|
}
|
817
823
|
}
|
@@ -860,7 +866,7 @@ EVENT = {
|
|
860
866
|
keyDown: function(e) {
|
861
867
|
var _this = EVENT,
|
862
868
|
_theKeyCode = e.keyCode,
|
863
|
-
_keyDownStateForActiveControl = _this.activeControl?_this.focusOptions[_this.activeControl.elemId].keyDown:false,
|
869
|
+
_keyDownStateForActiveControl = _this.activeControl?(_this.focusOptions[_this.activeControl.elemId]?_this.focusOptions[_this.activeControl.elemId].keyDown:false):false,
|
864
870
|
_repeat = (_keyDownStateForActiveControl === 'repeat'),
|
865
871
|
_stopEvent = false;
|
866
872
|
_this._modifiers(e);
|
@@ -902,7 +908,7 @@ EVENT = {
|
|
902
908
|
_ctrl;
|
903
909
|
_this._modifiers(e);
|
904
910
|
_this._lastKeyDown = null;
|
905
|
-
if (_this.activeControl && _this.focusOptions[_this.activeControl.elemId].keyUp === true) {
|
911
|
+
if (_this.activeControl && _this.activeControl.elemId && _this.focusOptions[_this.activeControl.elemId].keyUp === true) {
|
906
912
|
if(_this.activeControl.keyUp(_theKeyCode)){
|
907
913
|
_stopEvent = true;
|
908
914
|
}
|
@@ -134,7 +134,7 @@ HRect = HClass.extend({
|
|
134
134
|
}
|
135
135
|
_parentHeight = _parentSize[1];
|
136
136
|
if(_view.flexBottom){
|
137
|
-
_this.bottom =
|
137
|
+
_this.bottom = _parentHeight - _view.flexBottomOffset - _this.top;
|
138
138
|
}
|
139
139
|
if(!_view.flexTop){
|
140
140
|
_this.top = _this.bottom - _this.height;
|
data/js/foundation/view/view.js
CHANGED
@@ -615,7 +615,7 @@ HView = HClass.extend({
|
|
615
615
|
**/
|
616
616
|
drawRect: function() {
|
617
617
|
if(!this.rect.isValid){
|
618
|
-
console.log('invalid rect:',ELEM.get(this.elemId));
|
618
|
+
console.log('invalid rect:',this.rect);//,ELEM.get(this.elemId));
|
619
619
|
}
|
620
620
|
if(!this.parent){
|
621
621
|
console.log('no parent:',ELEM.get(this.elemId));
|
@@ -830,8 +830,22 @@ HView = HClass.extend({
|
|
830
830
|
* A string with the html escaped.
|
831
831
|
**/
|
832
832
|
escapeHTML: function( _html ) {
|
833
|
-
|
834
|
-
|
833
|
+
if( typeof _html !== 'string' ) {
|
834
|
+
return _html.toString();
|
835
|
+
}
|
836
|
+
for( var i=0, _reFrom, _reTo, _reArr = this._escapeHTMLArr; i < _reArr.length; i++ ){
|
837
|
+
_reFrom = _reArr[i][0];
|
838
|
+
_reTo = _reArr[i][1];
|
839
|
+
_html = _html.replace( _reFrom, _reTo );
|
840
|
+
}
|
841
|
+
return _html;
|
842
|
+
},
|
843
|
+
_escapeHTMLArr: [
|
844
|
+
[ new RegExp( /&/gmi ), '&' ],
|
845
|
+
[ new RegExp( />/gmi ), '>' ],
|
846
|
+
[ new RegExp( /</gmi ), '<' ],
|
847
|
+
[ new RegExp( /\n/gmi ), '<br>' ]
|
848
|
+
],
|
835
849
|
|
836
850
|
/** = Description
|
837
851
|
*
|
@@ -927,7 +941,6 @@ HView = HClass.extend({
|
|
927
941
|
_validHeight = (typeof _height === 'number'),
|
928
942
|
_right,
|
929
943
|
_bottom;
|
930
|
-
|
931
944
|
if(_arrLen === 6){
|
932
945
|
var
|
933
946
|
_parentSize = this.parentSize(),
|
@@ -976,6 +989,7 @@ HView = HClass.extend({
|
|
976
989
|
}
|
977
990
|
|
978
991
|
this.rect = HRect.nu(_leftOffset,_topOffset,_right,_bottom);
|
992
|
+
|
979
993
|
}
|
980
994
|
else {
|
981
995
|
console.log(_throwPrefix + 'the length has to be either 4 or 6.');
|
@@ -74,7 +74,7 @@ HRadioButtonList = HControl.extend({
|
|
74
74
|
die: function(){
|
75
75
|
this.listItems = null;
|
76
76
|
this.listItemViews = null;
|
77
|
-
this.radioButtonIndexValue.die();
|
77
|
+
this.radioButtonIndexValue && this.radioButtonIndexValue.die();
|
78
78
|
this.base();
|
79
79
|
},
|
80
80
|
radioButtonIndexValue: false,
|
@@ -105,7 +105,7 @@ HMiniMenu = HRadioButtonList.extend({
|
|
105
105
|
this.markupElemIds.subview = 0;
|
106
106
|
this.menuItemView = HView.extend({
|
107
107
|
bringToFront: function(){
|
108
|
-
this.setStyle('z-index',this.app.views.length);
|
108
|
+
this.setStyle('z-index',10000);//this.app.views.length);
|
109
109
|
}
|
110
110
|
}).nu(
|
111
111
|
[ this.rect.left, this.rect.top, this.rect.width, 500 ],
|
@@ -124,6 +124,7 @@ HMiniMenu = HRadioButtonList.extend({
|
|
124
124
|
setListItems: function(listItems){
|
125
125
|
this.base(listItems);
|
126
126
|
this.valueMatrix = this.menuItemView.valueMatrix;
|
127
|
+
this.refreshValue();
|
127
128
|
},
|
128
129
|
|
129
130
|
createComponent: function( i, _label ){
|
data/lib/plugins/plugins.rb
CHANGED
@@ -142,6 +142,15 @@ module RSence
|
|
142
142
|
plugin_src = "_bundle_path = #{params[:bundle_path].inspect};" + plugin_src
|
143
143
|
end
|
144
144
|
m.module_eval( plugin_src )
|
145
|
+
rescue SyntaxError => e
|
146
|
+
src_path = params[:src_path]
|
147
|
+
src_path = "<undefined src_path>" if src_path == nil
|
148
|
+
params[:plugin_manager].plugin_error(
|
149
|
+
e,
|
150
|
+
'BundleLoaderSyntaxError',
|
151
|
+
"The syntax of #{params[:bundle_name]} is invalid.",
|
152
|
+
src_path
|
153
|
+
)
|
145
154
|
rescue => e
|
146
155
|
src_path = params[:src_path]
|
147
156
|
src_path = "<undefined src_path>" if src_path == nil
|
metadata
CHANGED
@@ -1,15 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rsence-pre
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
5
|
-
prerelease:
|
4
|
+
hash: 117
|
5
|
+
prerelease: false
|
6
6
|
segments:
|
7
7
|
- 2
|
8
8
|
- 1
|
9
9
|
- 0
|
10
|
-
-
|
11
|
-
|
12
|
-
version: 2.1.0.8.pre
|
10
|
+
- 9
|
11
|
+
version: 2.1.0.9
|
13
12
|
platform: ruby
|
14
13
|
authors:
|
15
14
|
- Riassence Inc.
|
@@ -17,7 +16,7 @@ autorequire:
|
|
17
16
|
bindir: bin
|
18
17
|
cert_chain: []
|
19
18
|
|
20
|
-
date: 2010-
|
19
|
+
date: 2010-10-19 00:00:00 +03:00
|
21
20
|
default_executable: rsence-pre
|
22
21
|
dependencies:
|
23
22
|
- !ruby/object:Gem::Dependency
|