rsence-pre 2.2.0.19 → 2.2.0.20

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 CHANGED
@@ -1 +1 @@
1
- 2.2.0.19.pre
1
+ 2.2.0.20.pre
@@ -48,16 +48,21 @@ HClickButton = HButton.extend({
48
48
  click: true
49
49
  },
50
50
 
51
+ controlDefaults: HControlDefaults.extend({
52
+ clickOnValue: 1,
53
+ clickOffValue: 0
54
+ }),
55
+
51
56
  /** = Description
52
57
  * Sets the button enabled if this.value is 0.
53
58
  *
54
59
  **/
55
60
  refreshValue: function(){
56
61
  if( this.options.inverseValue ){
57
- this.setEnabled( this.value === 1 );
62
+ this.setEnabled( this.value === this.options.clickOnValue );
58
63
  }
59
64
  else {
60
- this.setEnabled( this.value === 0 );
65
+ this.setEnabled( this.value === this.options.clickOffValue );
61
66
  }
62
67
  },
63
68
  /** = Description
@@ -67,10 +72,10 @@ HClickButton = HButton.extend({
67
72
  click: function(){
68
73
  if(this.enabled){
69
74
  if( this.options.inverseValue ){
70
- this.setValue(0);
75
+ this.setValue( this.options.clickOffValue );
71
76
  }
72
77
  else {
73
- this.setValue(1);
78
+ this.setValue( this.options.clickOnValue );
74
79
  }
75
80
  }
76
81
  }
@@ -64,8 +64,10 @@ HTextControl = HControl.extend({
64
64
  },
65
65
 
66
66
  lostActiveStatus: function(){
67
- ELEM.get( this.markupElemIds.value ).blur();
68
- this.textBlur();
67
+ if(this['markupElemIds']!==undefined){
68
+ ELEM.get( this.markupElemIds.value ).blur();
69
+ this.textBlur();
70
+ }
69
71
  },
70
72
 
71
73
  setStyle: function(_name, _value, _cacheOverride) {
@@ -17,3 +17,10 @@ RSence =
17
17
  # JSONRenderer instances by plugin name.
18
18
  guiTrees: {}
19
19
 
20
+ killGuiTree: (_guiName)->
21
+ _guiTrees = RSence.guiTrees
22
+ _guiTree = _guiTrees[_guiName]
23
+ if _guiTree?
24
+ _guiTree.die()
25
+ _guiTrees[_guiName] = null
26
+ delete _guiTrees[_guiName]
@@ -129,7 +129,24 @@ HApplication = HClass.extend({
129
129
  *
130
130
  **/
131
131
  removeView: function(_viewId){
132
- HSystem.views[_viewId].remove();
132
+ if( typeof _viewId === 'object' ){
133
+ console.log('warning, viewId not a number:',_viewId,', trying to call its remove method directly..');
134
+ _viewId.remove();
135
+ return this;
136
+ }
137
+ var
138
+ _view = HSystem.views[_viewId];
139
+ if( _view ){
140
+ if( _view['remove'] ){
141
+ HSystem.views[_viewId].remove();
142
+ }
143
+ else {
144
+ console.log('view does not have method "remove":',_view);
145
+ }
146
+ }
147
+ else {
148
+ console.log('tried to remove non-existent viewId:'+_viewId);
149
+ }
133
150
  },
134
151
 
135
152
  /** = Description
@@ -166,7 +183,12 @@ HApplication = HClass.extend({
166
183
  **/
167
184
  destroyAllViews: function(){
168
185
  for(var i = 0; i < this.views.length; i++) {
169
- HSystem.views[this.views[i]].die();
186
+ try{
187
+ HSystem.views[this.views[i]].die();
188
+ }
189
+ catch(e){
190
+ console.log('unable to destroy:',this.views[i]);
191
+ }
170
192
  }
171
193
  },
172
194
 
@@ -33,14 +33,13 @@ HValueAction = HClass.extend({
33
33
  if(_sysUpdateZIndexOfChildrenBufferIndex !== -1){
34
34
  HSystem._updateZIndexOfChildrenBuffer.splice( _sysUpdateZIndexOfChildrenBufferIndex, 1 );
35
35
  }
36
- this._updateZIndexAllSiblings();
37
36
  this.parent = null;
38
37
  this.parents = [];
39
38
  }
40
39
  return this;
41
40
  },
42
41
  die: function(){
43
- this.parent.removeView( this );
42
+ this.parent.removeView( this.viewId );
44
43
  if( this.valueObj ){
45
44
  this.valueObj.release( this );
46
45
  }
@@ -123,6 +123,10 @@ HRect = HClass.extend({
123
123
  _view = HSystem.views[_viewId];
124
124
  if(_view.flexRight || _view.flexBottom){
125
125
  ELEM.flushLoop();
126
+ if( !_view.parent ){
127
+ _this.updateSecondaryValues();
128
+ return;
129
+ }
126
130
  _parentElemId = _view.parent.elemId;
127
131
  _parentSize = _view.parentSize();
128
132
  _parentWidth = _parentSize[0];
@@ -64,15 +64,21 @@ HSystem = {
64
64
  /** Calls applications, uses the prority as a prioritizer.
65
65
  **/
66
66
  scheduler: function(){
67
-
67
+ var
68
+ _appId=0,
69
+ _priority;
68
70
  // Loop through all applications:
69
- for( var _appId=0; _appId<this.apps.length; _appId++ ){
71
+ for( ; _appId<this.apps.length; _appId++ ){
70
72
  // Check, if the application exists:
71
73
  if( this.apps[ _appId ] ){
72
74
  // Check, if the application is busy:
73
75
  if( !this.busyApps[ _appId ] ){
76
+ _priority = this.appPriorities[ _appId ];
77
+ if( _priority < 0 ){
78
+ continue;
79
+ }
74
80
  // Check, if the tick count matches the priority of the app:
75
- if( (this.ticks % this.appPriorities[ _appId ]) === 0 ){
81
+ if( this.ticks % _priority === 0 ){
76
82
  // Set the app busy, the app itself should "unbusy" itself, when the idle call is done.
77
83
  // That happens in <HApplication._startIdle>
78
84
 
@@ -874,6 +874,9 @@ HView = HClass.extend({
874
874
  /** Gets the size of the parent. If the parent is the document body, uses the browser window size.
875
875
  **/
876
876
  parentSize: function(){
877
+ if(!this.parent){
878
+ return [ 0, 0 ];
879
+ }
877
880
  if(this.parent.elemId === 0){
878
881
  var
879
882
  _winSize = ELEM.windowSize(),
@@ -1371,7 +1374,7 @@ HView = HClass.extend({
1371
1374
  *
1372
1375
  **/
1373
1376
  removeView: function(_viewId) {
1374
- HSystem.views[_viewId].remove();
1377
+ this.app.removeView( _viewId ); // no reason to duplicate this functionality here
1375
1378
  return this;
1376
1379
  },
1377
1380
 
@@ -67,11 +67,8 @@ module RSence
67
67
  end
68
68
 
69
69
  def kill( msg )
70
- gui_name = @parent.name
71
- gui_ns = "RSence.guiTrees[#{@gui_name.to_json}]"
72
- msg.reply( "#{gui_ns}.die();", true )
73
- msg.reply( "#{gui_ns}=null;", true )
74
- msg.reply( "delete #{gui_ns};", true )
70
+ # gui_name = @parent.name
71
+ msg.reply( "RSence.killGuiTree(#{@gui_name.to_json});" )
75
72
  end
76
73
 
77
74
  # Use this method to extract all the value id's of the +ses+ hash.
@@ -24,7 +24,7 @@ module ClientPkgServe
24
24
  def build_busy_wait
25
25
  while @build_busy
26
26
  puts "-- build not finished, waiting.. --"
27
- sleep 0.1
27
+ sleep 0.4
28
28
  end
29
29
  end
30
30
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rsence-pre
3
3
  version: !ruby/object:Gem::Version
4
- hash: 89
4
+ hash: 87
5
5
  prerelease:
6
6
  segments:
7
7
  - 2
8
8
  - 2
9
9
  - 0
10
- - 19
11
- version: 2.2.0.19
10
+ - 20
11
+ version: 2.2.0.20
12
12
  platform: ruby
13
13
  authors:
14
14
  - Riassence Inc.
@@ -17,7 +17,7 @@ autorequire:
17
17
  bindir: bin
18
18
  cert_chain: []
19
19
 
20
- date: 2011-08-03 00:00:00 Z
20
+ date: 2011-08-09 00:00:00 Z
21
21
  dependencies:
22
22
  - !ruby/object:Gem::Dependency
23
23
  name: rsence-deps