Commit Graph

307 Commits

Author SHA1 Message Date
James Chen a6ded65f59 Added COCOS2D_DEBUG=1 for libJSBinding.vcxproj of debug mode. 2012-12-25 11:33:36 +08:00
James Chen bdb4df293b Merge branch 'gles20' of https://github.com/cocos2d/cocos2d-x into iss1602-jsb-sys 2012-12-25 10:01:48 +08:00
CocosRobot 3de95c9362 cocos2dxmatoMac-mini : updating submodule reference to latest autogenerated bindings 2012-12-25 09:54:52 +08:00
James Chen cc7d383737 fixed #1622: Crash occurs when cc.Node.getChildren is invoked if there are no children. 2012-12-24 11:55:04 +08:00
James Chen 22a2b34637 issue #1620: Made sys.localStorage support for jsb, works ok on android. 2012-12-24 11:46:27 +08:00
ivzave fcce930188 repair linux eclipse build & add 64-bit project configurations 2012-12-22 07:14:59 +04:00
James Chen f26ce4fb84 Made sys.localStorage support for jsb, works ok on win32. 2012-12-21 18:07:45 +08:00
James Chen 6700a1c4ce issue #1603: fixed some warnings for liblua.vcxproj. 2012-12-20 17:28:49 +08:00
James Chen 9a0a5e6b31 issue #1603: fixed some warnings. 2012-12-20 17:18:49 +08:00
James Chen 1562658bd8 issue #1603: Added libJSBinding project for win32 platform. 2012-12-20 17:18:02 +08:00
James Chen 4660e72eda issue #1603: Moved the position of some projects. 2012-12-20 12:58:21 +08:00
James Chen e8c0844dd5 fixed #1617: Some improvements for JS Bindings.
1) Changed cc.REPEAT_FOREVER = - 1 to cc.REPEAT_FOREVER = 0xffffffff
[Reason]: If cc.REPEAT_FOREVER = -1, it will be a very big double value after converting it to double by JS_ValueToNumber on android.
Then cast it to unsigned int, the value will be 0. The schedule will not be able to work.
I don't know why this occurs only on android.
[Solution]: Instead of passing -1 to it, I assign it with max value of unsigned int in c++.

2) Added two helper function, cc.ArrayGetIndexOfObject and cc.ArrayContainsObject.

3) Added JSScheduleWrapper::removeTargetForNativeNode to avoid memory leaks.

4) Improvments for JSTouchDelegate. Added four functions as follows:
// Set the touch delegate to map by using the key (pJSObj).
static void setDelegateForJSObject(JSObject* pJSObj, JSTouchDelegate* pDelegate);

// Get the touch delegate by the key (pJSObj).
static JSTouchDelegate* getDelegateForJSObject(JSObject* pJSObj);

// Remove the delegate by the key (pJSObj).
static void removeDelegateForJSObject(JSObject* pJSObj);

void unregisterTouchDelegate();
And exported cc.unregisterTouchDelegate(); to js.
Fix a memory leak for JSTouchDelegate by making it as an autorelease object.

5) Don't add js callback function to the reserved slot of object.
[Reason]: The target object may execute more than one schedule.
Therefore, previous js callback function will be replaced
by the current one. For example:

this.scheduleOnce(function() { temporary function 1 }, 0.5);
this.scheduleOnce(function() { temporary function 2 }, 0.5);

In this case, the temporary function 1 will be removed from reserved slot 0.
And temporary function 2 will be set to reserved slot 0 of this object.
If gc is triggered before the JSScheduleWrapper::scheduleFunc is invoked,
crash will happen. You could simply reproduce it by adding jsc.garbageCollect(); after scheduleOnce.
[Solution] Because one schedule corresponds to one JSScheduleWrapper, we root
the js callback function in JSScheduleWrapper::setJSCallbackFunc and unroot it
at the destructor of JSScheduleWrapper.
2012-12-18 11:56:44 +08:00
CocosRobot 13b04e3ee4 cocos2dxmatoMac-mini : updating submodule reference to latest autogenerated bindings 2012-12-17 15:26:28 +08:00
dualface 98ea80329e fix android compile warning 2012-12-14 18:01:54 +08:00
James Chen e7328cf3ba fixed #1614: DrawNodeTest crashes on JSB. 2012-12-14 10:31:31 +08:00
Nicolas Gramlich 9537389949 Added cc.DrawNode.extend. 2012-12-12 21:49:29 +08:00
James Chen 190e6c1de5 Merge branch 'linux-lua' of https://github.com/dumganhar/cocos2d-x into lua-linux
Conflicts:
	scripting/lua/cocos2dx_support/LuaCocos2d.cpp
2012-12-10 17:25:23 +08:00
dualface f815cdc423 merge gles20 2012-12-10 17:00:16 +08:00
dualface 268aa45d2c rename CCNode:scheduleUpdateScriptHandlerWithPriority() to CCNode::scheduleUpdateWhitPriorityLua()
remove unused functions
2012-12-10 16:09:23 +08:00
dualface 77d4da6e22 [lua] remove va_list 2012-12-10 14:28:26 +08:00
dualface b6e605b9ae [lua] fix CCSequence export 2012-12-10 14:19:18 +08:00
dualface 4ca6cf8c7a [lua] update LuaCocos2d.cpp 2012-12-10 14:09:00 +08:00
dualface c8753f72ef [scripting] add CCNode::scheduleUpdateScriptHandlerWithPriority() 2012-12-10 13:48:27 +08:00
CocosRobot f7e87f2269 cocos2dxmatoMac-mini : updating submodule reference to latest autogenerated bindings 2012-12-07 09:51:17 +08:00
CocosRobot fe9e6ba688 cocos2dxmatoMac-mini : updating submodule reference to latest autogenerated bindings 2012-12-06 17:22:53 +08:00
James Chen 6a7a365365 Updated eclipse project configurations for linux 2012-12-06 14:57:03 +08:00
James Chen b044a89d6f Merge branch 'gles20' of https://github.com/ivzave/cocos2d-x into linux-lua
Conflicts:
	scripting/lua/cocos2dx_support/LuaCocos2d.cpp
2012-12-06 14:55:18 +08:00
James Chen 34eb3a88c2 Commented JS_SetGCZeal. 2012-12-04 17:23:08 +08:00
James Chen b5ae1f6d2a Updated MoonWarriors/Classes/AppDelegate.cpp.
Updated the submodule reference of cocos2d-js-tests to the latest one.
Fixed duplicate define in js_bindings_ccbreader.cpp.
2012-12-04 11:36:45 +08:00
CocosRobot 545002b3a9 cocos2dxmatoMac-mini : updating submodule reference to latest autogenerated bindings 2012-12-04 10:59:58 +08:00
minggo 75845b56c0 Merge pull request #1694 from dualface/update_luabinding
Update luabinding
2012-12-03 18:59:23 -08:00
minggo bbcbfa71ef Merge pull request #1704 from minggo/cclayer_script_support
Cclayer script support
2012-12-03 18:55:11 -08:00
minggo 4e7fca3185 merge dualface's pull request for fixing CCLayer script support and fix error for js-binding 2012-12-04 10:52:49 +08:00
James Chen 9f168faeb0 Merge pull request #1696 from fape/lua_marmalade
fixed #1591: Update for Lua marmalade.
* Add ignore marmalade generated Visual Studio directory
* Update Lua and HelloLua marmalade project file
* Add TestLua marmalade project
2012-12-03 18:51:39 -08:00
minggo c21ad515bd Merge pull request #1693 from dualface/add_tolua_isnull
add tolua.isnull()
2012-12-03 18:08:21 -08:00
minggo 7ad2484a91 Merge branch 'fix_CCLayer_script_support' of https://github.com/dualface/cocos2d-x into cclayer_script_support 2012-12-04 09:50:01 +08:00
James Chen 7c074d4ced issue #1550: fixed a memory leak in jsbinding. 2012-12-03 22:17:53 +08:00
James Chen 478791a472 Added CCBReader::setCCBRootPath. 2012-12-03 18:27:50 +08:00
James Chen f6185844a9 fixed #1588: Get the right js callback function in js_CCScheduler_schedule. 2012-12-03 15:59:29 +08:00
James Chen d97dfe162a fixed #1588: RescheduleCallback support for JSBinding. 2012-12-03 15:33:36 +08:00
fape aac98975da update lua marmalade project 2012-12-02 15:29:10 +01:00
dualface 0e65257bc2 [luabinding] remove duplicate ccLanguageType 2012-12-02 16:17:17 +08:00
dualface 5bc95780c0 update luabinding 2012-12-02 15:48:15 +08:00
dualface 308a01e629 [luabinding] add tolua.isnull() 2012-12-02 15:29:00 +08:00
dualface e0ee27cb17 [luabinding] fix CCLayer:getScriptTOuchHandlerEntry()
[luabinding] add CCLayer keypad, accelerometer support
2012-12-02 15:17:34 +08:00
James Chen 399fb53452 fixed #1586: Native object need to be an autorelease object. 2012-12-01 11:41:51 +08:00
James Chen e3615e2fb1 fixed #1586: Invoking removeAllRoots in ScriptingCore destructor to avoid crash when app exits. 2012-12-01 11:41:50 +08:00
James Chen 36bc0ab0bb Invoking JS_SetGCZeal only when the macros DEBUG and JS_GC_ZEAL is defined. 2012-12-01 11:41:50 +08:00
Rohan Kuruvilla 745392ad6c Changing chipmunk manual bindings to fix GC issues 2012-11-30 16:08:19 -08:00
James Chen 94b1d39b2c Using release version of spidermonkey for win32, otherwise jsbinding project can't be run on other machines. 2012-11-30 22:45:51 +08:00