File tree 12 files changed +30
-42
lines changed
12 files changed +30
-42
lines changed Original file line number Diff line number Diff line change @@ -143,13 +143,7 @@ cc.NotificationObserver = cc.Class.extend({
143
143
* @param {cc.Class } obj
144
144
*/
145
145
performSelector :function ( obj ) {
146
- if ( this . _target && ( typeof ( this . _selector ) == "string" ) ) {
147
- this . _target [ this . _selector ] ( obj ) ;
148
- } else if ( this . _target && ( typeof ( this . _selector ) == "function" ) ) {
149
- this . _selector . call ( this . _target , obj ) ;
150
- } else {
151
- this . _selector ( obj ) ;
152
- }
146
+ cc . doCallback ( this . _selector , this . _target , obj ) ;
153
147
} ,
154
148
155
149
_target :null ,
Original file line number Diff line number Diff line change @@ -399,10 +399,7 @@ cc.CallFunc = cc.ActionInstant.extend(/** @lends cc.CallFunc# */{
399
399
* execute the function.
400
400
*/
401
401
execute :function ( ) {
402
- if ( this . _callFunc != null ) //CallFunc, N, ND
403
- this . _callFunc . call ( this . _selectorTarget , this . _target , this . _data ) ;
404
- else if ( this . _function )
405
- this . _function . call ( null , this . _target ) ;
402
+ cc . doCallback ( this . _callFunc , this . _selectorTarget , this . _data ) ;
406
403
} ,
407
404
408
405
/**
Original file line number Diff line number Diff line change @@ -270,13 +270,7 @@ cc.Loader = cc.Class.extend(/** @lends cc.Loader# */{
270
270
} ,
271
271
272
272
_complete : function ( ) {
273
- if ( this . _target && ( typeof ( this . _selector ) == "string" ) ) {
274
- this . _target [ this . _selector ] ( this ) ;
275
- } else if ( this . _target && ( typeof ( this . _selector ) == "function" ) ) {
276
- this . _selector . call ( this . _target , this ) ;
277
- } else {
278
- this . _selector ( this ) ;
279
- }
273
+ cc . doCallback ( this . _selector , this . _target ) ;
280
274
281
275
this . _curNumber = 0 ;
282
276
this . _loadedNumber = 0 ;
Original file line number Diff line number Diff line change @@ -316,10 +316,7 @@ cc.Timer = cc.Class.extend(/** @lends cc.Timer# */{
316
316
} ,
317
317
318
318
_callSelector :function ( ) {
319
- if ( typeof ( this . _selector ) == "string" )
320
- this . _target [ this . _selector ] ( this . _elapsed ) ;
321
- else // if (typeof(this._selector) == "function") {
322
- this . _selector . call ( this . _target , this . _elapsed ) ;
319
+ cc . doCallback ( this . _selector , this . _target , this . _elapsed ) ;
323
320
} ,
324
321
325
322
/**
Original file line number Diff line number Diff line change @@ -554,4 +554,22 @@ cc.SizeFromString = function (content) {
554
554
var result = CCNS_REG1 . exec ( content ) ;
555
555
if ( ! result ) return cc . SizeZero ( ) ;
556
556
return cc . size ( parseFloat ( result [ 1 ] ) , parseFloat ( result [ 2 ] ) ) ;
557
+ } ;
558
+
559
+ /**
560
+ *
561
+ * @param {Function } selector
562
+ * @param {cc.Node } target
563
+ * @param {Object|Number|String } data
564
+ */
565
+ cc . doCallback = function ( selector , target , data ) {
566
+ if ( ! selector )
567
+ return ;
568
+ if ( target && ( typeof ( selector ) == "string" ) ) {
569
+ target [ selector ] ( data ) ;
570
+ } else if ( target && ( typeof ( selector ) == "function" ) ) {
571
+ selector . call ( target , data ) ;
572
+ } else {
573
+ selector ( data ) ;
574
+ }
557
575
} ;
Original file line number Diff line number Diff line change @@ -350,7 +350,7 @@ cc.Sprite = cc.NodeRGBA.extend(/** @lends cc.Sprite# */{
350
350
var locListeners = this . _loadedEventListeners ;
351
351
for ( var i = 0 , len = locListeners . length ; i < len ; i ++ ) {
352
352
var selCallback = locListeners [ i ] ;
353
- selCallback . eventCallback . call ( selCallback . eventTarget , this ) ;
353
+ cc . doCallback ( selCallback . eventCallback , selCallback . eventTarget , this ) ;
354
354
}
355
355
locListeners . length = 0 ;
356
356
} ,
Original file line number Diff line number Diff line change @@ -80,7 +80,7 @@ cc.SpriteFrame = cc.Class.extend(/** @lends cc.SpriteFrame# */{
80
80
if ( ! locListeners ) return ;
81
81
for ( var i = 0 , len = locListeners . length ; i < len ; i ++ ) {
82
82
var selCallback = locListeners [ i ] ;
83
- selCallback . eventCallback . call ( selCallback . eventTarget , this ) ;
83
+ cc . doCallback ( selCallback . eventCallback , selCallback . eventTarget , this ) ;
84
84
}
85
85
locListeners . length = 0 ;
86
86
} ,
Original file line number Diff line number Diff line change @@ -932,7 +932,7 @@ cc.Texture2DWebGL = cc.Class.extend(/** @lends cc.Texture2D# */{
932
932
var locListeners = this . _loadedEventListeners ;
933
933
for ( var i = 0 , len = locListeners . length ; i < len ; i ++ ) {
934
934
var selCallback = locListeners [ i ] ;
935
- selCallback . eventCallback . call ( selCallback . eventTarget , this ) ;
935
+ cc . doCallback ( selCallback . eventCallback , selCallback . eventTarget , this ) ;
936
936
}
937
937
locListeners . length = 0 ;
938
938
}
@@ -1284,7 +1284,7 @@ cc.Texture2DCanvas = cc.Class.extend(/** @lends cc.Texture2D# */{
1284
1284
var locListeners = this . _loadedEventListeners ;
1285
1285
for ( var i = 0 , len = locListeners . length ; i < len ; i ++ ) {
1286
1286
var selCallback = locListeners [ i ] ;
1287
- selCallback . eventCallback . call ( selCallback . eventTarget , this ) ;
1287
+ cc . doCallback ( selCallback . eventCallback , selCallback . eventTarget , this ) ;
1288
1288
}
1289
1289
locListeners . length = 0 ;
1290
1290
}
Original file line number Diff line number Diff line change @@ -97,11 +97,7 @@ cc.TextureCache = cc.Class.extend(/** @lends cc.TextureCache# */{
97
97
} ,
98
98
99
99
_addImageAsyncCallBack :function ( target , selector ) {
100
- if ( target && ( typeof ( selector ) === "string" ) ) {
101
- target [ selector ] ( ) ;
102
- } else if ( target && ( typeof ( selector ) === "function" ) ) {
103
- selector . call ( target ) ;
104
- }
100
+ cc . doCallback ( selector , target ) ;
105
101
} ,
106
102
107
103
_initializingRenderer : function ( ) {
Original file line number Diff line number Diff line change @@ -68,7 +68,7 @@ cc.LabelAtlas = cc.AtlasNode.extend(/** @lends cc.LabelAtlas# */{
68
68
var locListeners = this . _loadedEventListeners ;
69
69
for ( var i = 0 , len = locListeners . length ; i < len ; i ++ ) {
70
70
var selCallback = locListeners [ i ] ;
71
- selCallback . eventCallback . call ( selCallback . eventTarget , this ) ;
71
+ cc . doCallback ( selCallback . eventCallback , selCallback . eventTarget , this ) ;
72
72
}
73
73
locListeners . length = 0 ;
74
74
} ,
Original file line number Diff line number Diff line change @@ -522,7 +522,7 @@ cc.LabelBMFont = cc.SpriteBatchNode.extend(/** @lends cc.LabelBMFont# */{
522
522
var locListeners = this . _loadedEventListeners ;
523
523
for ( var i = 0 , len = locListeners . length ; i < len ; i ++ ) {
524
524
var selCallback = locListeners [ i ] ;
525
- selCallback . eventCallback . call ( selCallback . eventTarget , this ) ;
525
+ cc . doCallback ( selCallback . eventCallback , selCallback . eventTarget , this ) ;
526
526
}
527
527
locListeners . length = 0 ;
528
528
} ,
Original file line number Diff line number Diff line change @@ -184,15 +184,7 @@ cc.MenuItem = cc.NodeRGBA.extend(/** @lends cc.MenuItem# */{
184
184
*/
185
185
activate :function ( ) {
186
186
if ( this . _isEnabled ) {
187
- var locTarget = this . _target , locCallback = this . _callback ;
188
- if ( ! locCallback )
189
- return ;
190
- if ( locTarget && ( typeof ( locCallback ) == "string" ) ) {
191
- locTarget [ locCallback ] ( this ) ;
192
- } else if ( locTarget && ( typeof ( locCallback ) == "function" ) ) {
193
- locCallback . call ( locTarget , this ) ;
194
- } else
195
- locCallback ( this ) ;
187
+ cc . doCallback ( this . _callback , this . _target , this ) ;
196
188
}
197
189
}
198
190
} ) ;
You can’t perform that action at this time.
0 commit comments