Commit Graph

344 Commits

Author SHA1 Message Date
minggo 136033c282 not set _orderOfArrival to 0 after visit 2014-06-19 15:09:27 +08:00
minggo 08453b911d Merge pull request #7071 from pandamicro/Script_onEnter_fix
Fixed #5563: Wrap override onEnter function by script call detection code to solve bugs in JSB
2014-06-18 13:37:57 +08:00
pandamicro 94fdff1da9 Fixed #5563: Make sendNodeEventToXXX as static functions of ScriptEngineManager in CCScriptSupport 2014-06-18 11:51:52 +08:00
minggo 53963a2441 issue #4693:enumerateChildren() support regular expression 2014-06-17 11:43:03 +08:00
pandamicro d524ba1013 Fixed #5563: Wrap override onEnter function by script call detection code to solve bugs in JSB 2014-06-13 17:59:23 +08:00
minggo 05a65a68bb issue #4693: added enumerateChildren() 2014-06-12 10:41:08 +08:00
minggo 8a5bfb9840 issue #4693: add getName(), setName() and getChildByName() 2014-06-11 16:57:43 +08:00
minggo 0ca9a98f4a Merge pull request #6920 from minggo/orrderOfArrival
don't have to set _orderOfArrival to 0 after visit
2014-06-10 10:28:38 +08:00
Sergey 904f157c2c move node from one parent to another fix 2014-06-07 12:25:20 +04:00
Ricardo Quesada 79ebc546f8 Merge remote-tracking branch 'cocos2d/v3' into normalized_position
Conflicts:
	CHANGELOG
	cocos/ui/UILayout.cpp
2014-06-04 09:19:22 -07:00
minggo 5432698674 Merge pull request #6969 from boyu0/bug5482_setPhysicsBody
closed #5482: Node::setPhysicsBody() doesn't work after node added to another node.
2014-06-04 13:52:43 +08:00
boyu0 dd0eecb905 closed #5482: fix issue: Node::setPhysicsBody() doesn't work after node added to other node. 2014-06-04 11:58:04 +08:00
Ricardo Quesada b24c674d25 Little fixes for setNormalized 2014-05-30 21:50:39 -07:00
Ricardo Quesada 1b8d0d88df Adds setNormalizedPosition()
Changes in `visit()` were done in order to do it
in a robust and fast way.
2014-05-30 16:42:05 -07:00
minggo 2e7865a4f6 coding style fix 2014-05-28 17:41:34 +08:00
minggo 1618d2a4e2 don't have to set _orderOfArrival to 0 after visit 2014-05-28 15:50:42 +08:00
zifter d875f27c67 Merge branch 'FixNodeConst' of https://github.com/zifter/cocos2d-x into FixNodeConst
Conflicts:
	cocos/ui/UIListView.h
	cocos/ui/UIPageView.h
2014-05-17 10:40:36 +03:00
Ricardo Quesada 0f67247325 Squashed commit of the following:
commit a794d107ad85667e3d754f0b6251fc864dfbf288
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Fri May 16 14:33:49 2014 -0700

    Yeah... everything compiles on win32 and wp8

commit 4740be6e4a0d16f742c27996e7ab2c100adc76af
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Fri May 16 13:58:38 2014 -0700

    CCIME moved to base

    and compiles on Android

commit ff3e1bf1eb27a01019f4e1b56d1aebbe2d385f72
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Fri May 16 13:02:57 2014 -0700

    compiles Ok for Windows Phone 8

commit 8160a4eb2ecdc61b5bd1cf56b90d2da6f11e3ebd
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Fri May 16 12:25:31 2014 -0700

    fixes for Windows Phone 8

commit 418197649efc93032aee0adc205e502101cdb53d
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Fri May 16 11:15:13 2014 -0700

    Compiles on Win32

commit 08813ed7cf8ac1079ffadeb1ce78ea9e833e1a33
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Fri May 16 10:08:31 2014 -0700

    Compiles on linux!

commit 118896521e5b335a5257090b6863f1fb2a2002fe
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Fri May 16 09:30:42 2014 -0700

    moves cocos/2d/platform -> cocos/platform

commit 4fe9319d7717b0c1bccb2db0156eeb86255a89e0
Merge: bd68ec2 511295e
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Fri May 16 08:24:41 2014 -0700

    Merge remote-tracking branch 'cocos2d/v3' into files

commit bd68ec2f0e3a826d8b2f4b60564ba65ce766bc56
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Thu May 15 19:36:23 2014 -0700

    files in the correct directory
2014-05-16 14:36:00 -07:00
Ricardo Quesada dc711643cd Squashed commit of the following:
commit a9572b8913f3a38b59adbd7b4017ab9848a6b2b5
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed May 14 10:03:44 2014 -0700

    math renames

    `Vector2` -> `Vec2`
    `Vector3` -> `Vec3`
    `Vector4` -> `Vec4`
    `Matrix` -> `Mat4`

commit 4e107f4bd854c26bfceb52b063d6bd9cea02d6a3
Author: Huabing.Xu <dabingnn@gmail.com>
Date:   Wed May 14 09:24:28 2014 -0700

    raw version of rename Vector3

commit 1d115573ebe96a5fc815fa44fbe6417ea7dba841
Author: Huabing.Xu <dabingnn@gmail.com>
Date:   Wed May 14 09:07:14 2014 -0700

    rename Vector2 after merge

commit ab2ed58c129dbc30a4c0970ed94568c5d271657b
Merge: 1978d2d 86fb75a
Author: Huabing.Xu <dabingnn@gmail.com>
Date:   Wed May 14 09:05:30 2014 -0700

    Merge branch 'v3' into v3_renameMathClassName

    Conflicts:
    	tests/cpp-tests/Classes/UITest/CocoStudioGUITest/UIButtonTest/UIButtonTest_Editor.cpp
    	tests/cpp-tests/Classes/UITest/CocoStudioGUITest/UICheckBoxTest/UICheckBoxTest_Editor.cpp
    	tests/cpp-tests/Classes/UITest/CocoStudioGUITest/UISliderTest/UISliderTest_Editor.cpp
    	tests/cpp-tests/Classes/UITest/CocoStudioGUITest/UITextFieldTest/UITextFieldTest.cpp
    	tests/cpp-tests/Classes/UITest/CocoStudioGUITest/UITextFieldTest/UITextFieldTest_Editor.cpp

commit 1978d2d174877172ccddc083020a1bbf43ad3b39
Author: Huabing.Xu <dabingnn@gmail.com>
Date:   Wed May 14 08:51:45 2014 -0700

    rename vector2 in tests/cpp-empty-test folder

commit d4e0ff13dcce62724d2fece656543f26aa28e467
Author: Huabing.Xu <dabingnn@gmail.com>
Date:   Wed May 14 00:58:23 2014 -0700

    rename vector2 in tests/cpp-tests cpp files

commit be50ca2ec75e0fd32a6fcdaa15fe1ebb4cafe79f
Author: Huabing.Xu <dabingnn@gmail.com>
Date:   Wed May 14 00:52:57 2014 -0700

    rename vector2 in tests/cpp-tests head files

commit 6daef564400d4e28c4ce20859a68e0f583fed125
Author: Huabing.Xu <dabingnn@gmail.com>
Date:   Wed May 14 00:49:48 2014 -0700

    rename vector2 in extension folder

commit 8f3f0f65ceea92c9e7a0d87ab54e62220c5572e2
Author: Huabing.Xu <dabingnn@gmail.com>
Date:   Wed May 14 00:47:22 2014 -0700

    rename vector2 in cocos/2d cpp files

commit e1f3105aae06d595661a3030f519f7cc13aefbed
Author: Huabing.Xu <dabingnn@gmail.com>
Date:   Wed May 14 00:44:39 2014 -0700

    rename vector2 in cocos/2d head files

commit 6708d890bfe486109120c3cd4b9fe5c078b7108f
Author: Huabing.Xu <dabingnn@gmail.com>
Date:   Wed May 14 00:40:59 2014 -0700

    rename vector2 in cocos/base folder

commit d3978fa5447c31ea2f3ece5469b7e746dfba4248
Author: Huabing.Xu <dabingnn@gmail.com>
Date:   Wed May 14 00:40:43 2014 -0700

    rename vector2 in cocos/deprecated folder

commit 4bff45139363d6b9706edbbcf9f322d48b4fd019
Author: Huabing.Xu <dabingnn@gmail.com>
Date:   Wed May 14 00:40:26 2014 -0700

    rename vector2 in cocos/editor-support folder

commit 353d244c995f8b5d14f635c52aed8bc5e5fc1a6f
Author: Huabing.Xu <dabingnn@gmail.com>
Date:   Wed May 14 00:36:48 2014 -0700

    rename vector2 in cocos/ui folder

commit 758b8f4d513084b9922d7242e9b8f2c7f316de6c
Author: Huabing.Xu <dabingnn@gmail.com>
Date:   Wed May 14 00:32:39 2014 -0700

    rename vector2 in cocos/renderer folder

commit 0bd2710dd8714cecb993880bc37affd9ecb05c27
Author: Huabing.Xu <dabingnn@gmail.com>
Date:   Wed May 14 00:32:15 2014 -0700

    rename vector2 in cocos/physics folder

commit b7f0581c4587348bdbc1478d5374c2325735f21d
Author: Huabing.Xu <dabingnn@gmail.com>
Date:   Wed May 14 00:25:01 2014 -0700

    rename vector2 in cocos/math folder

commit a8631a8e1a4e2740807ccd9be9d70de6ecaad7dd
Author: Huabing.Xu <dabingnn@gmail.com>
Date:   Wed May 14 00:16:55 2014 -0700

    rename Vector2 to Vec2
    deprecate typedef Vector2
2014-05-14 10:07:09 -07:00
Ricardo Quesada 723938e292 Adds effectNode in ShaderTest2 2014-05-13 18:12:58 -07:00
Ricardo Quesada 0171e27747 Merge pull request #6714 from Dhilan007/v3_nodefix
Fix a bug that if a node changes parent, parent's matrix will not update to reflect this change.
2014-05-13 14:14:27 -07:00
zifter 249dffa346 getter always must be a const method. 2014-05-13 23:28:04 +03:00
Ricardo Quesada 31dd70dba2 Matrix::identity() -> IDENTITY
consistency with the rest of the  cocos2d API
2014-05-13 10:26:25 -07:00
Nite Luo 7d8cfc4cca set parent transform dirty when addChild 2014-05-12 23:28:20 -07:00
Ricardo Quesada 012f1020ca GLProgramState fixes
It is possible to submit to the Renderer a Sprite with custom uniforms
(although it won't be batched).
It is possible to use a custom shader + uniforms on Sprite with
subclassing Sprite
2014-05-12 19:12:56 -07:00
Ricardo Quesada a8c2fb5431 Fixes deprecated warnings 2014-05-09 21:29:24 -07:00
yangxiao 95e036dd1b GLProgramStateCache 2014-05-08 21:54:49 -07:00
Ricardo Quesada 62d9c24518 moves shaders files from 2d/ to renderer/ 2014-05-08 18:01:48 -07:00
Ricardo Quesada 580ebf939f working Ok with new API 2014-05-08 15:43:12 -07:00
Ricardo Quesada 462338879e rolling back physics in layer 2014-05-01 16:42:35 -07:00
Ricardo Quesada 40fe815ab9 Squashed commit of the following:
commit c16dcfaaea0922039aad05bce1f4efed18e04871
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Apr 30 19:05:18 2014 -0700

    more linux fixes

commit 1553795976c9090a1b46deb53d12910fe0676008
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Apr 30 19:04:04 2014 -0700

    more linux fixes

commit 1e43a8cabff33cbf25aa5eb5412f53a878222d83
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Apr 30 19:02:07 2014 -0700

    fixes linux isuses

commit 723a445dd6411f91846da2b801248ad8298174f1
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Apr 30 18:58:50 2014 -0700

    more linux fixes

commit 533c8025e794fc76cef02f396b3a93b3d7f4cfc8
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Apr 30 18:57:33 2014 -0700

    more linux fixes

commit 4ba1e84959670bcbf044f18d1c0d4b3cb3be4090
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Apr 30 18:53:43 2014 -0700

    more linux fixes

commit 1f8e011f306a47ed4134224e5e349929201f0539
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Apr 30 18:49:28 2014 -0700

    more linux fixes

commit 3e2033100822ff6d532a1b4f012337491dc11920
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Apr 30 18:47:43 2014 -0700

    more linux fixes

commit 2e708863c75fd032f1b2396dfdf1d31f7a62b713
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Apr 30 18:46:00 2014 -0700

    more linux fixes

commit 861b5b92a6efd4de7b926c20d636ce9d749b293f
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Apr 30 18:43:15 2014 -0700

    more linux fixes

commit 2a43365a0c1755e9b9cada53301be1a20adb31cf
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Apr 30 18:36:06 2014 -0700

    more fixes for linux

commit 7d332bf911892f87c7824d2a5da7bf73ce7ec411
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Apr 30 18:35:29 2014 -0700

    more fixes for linux

commit f1becc17d3316dfe3678c23c9dcedb7a447d9235
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Apr 30 18:34:44 2014 -0700

    more fixes for linux

commit d2e5959bb0dde921dd5e73be1d8acc3b3f50e51d
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Apr 30 18:33:45 2014 -0700

    fixes for linux

commit ad9b633c352107cf0e8b060a0e23d6e6a3f5e80f
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Apr 30 18:16:48 2014 -0700

    compiles on Windows

commit 4425ee8e5de8f42a2d6050e4470109600dce8b5d
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Wed Apr 30 18:07:20 2014 -0700

    fix builder
2014-04-30 19:09:13 -07:00
Ricardo Quesada b5f513ce16 Merge branch 'v3' into improved_directory_structure 2014-04-30 13:15:10 -07:00
Huabing.Xu 183dd1ec64 inverse and conjugate, negate for matrix 2014-05-01 01:59:36 +08:00
yangxiao 11dc9367ff wrong rotation 2014-04-29 18:19:30 -07:00
yangxiao 3237d7b23d Revert "wrong rotation"
This reverts commit 3c9560017e.
2014-04-29 18:14:41 -07:00
Ricardo Quesada 8bb8416c26 Improved directory structure 2014-04-29 17:37:36 -07:00
yangxiao 3c9560017e wrong rotation 2014-04-29 17:27:32 -07:00
Ricardo Quesada 81c2d92355 yeah... love in includes
<3
2014-04-26 10:35:57 -07:00
Ricardo Quesada 9b118e5e96 Squashed commit of the following:
commit 519fcd7f68e3586c376fd5e8d4a0ee220a48d225
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Sat Apr 26 10:10:06 2014 -0700

    Updates templates files

commit 2b07843ebe592f56b2abc544ccf66d441bb19fc5
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Sat Apr 26 10:08:19 2014 -0700

    compiles on Windows

commit b175522ef7205eaab3bd3f26c27c5d6514cbe2a4
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Sat Apr 26 09:55:30 2014 -0700

    adds cocos2d.h

commit 4c3d14f929bac017b93ca843b4f149d352264a30
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Sat Apr 26 09:54:24 2014 -0700

    re-adds missing files

commit f729181728959260d14c4152555534f5beec8e05
Merge: 148da79 2adac67
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Sat Apr 26 09:51:12 2014 -0700

    Merge branch 'includes_fixes' of github.com:ricardoquesada/cocos2d-x into includes_fixes

commit 148da79010c5dffeab885933624cffaf3d588852
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Sat Apr 26 09:49:12 2014 -0700

    Adds SimpleAudioEngine

commit 2adac67019180ec82b7bd03f0b67c12f62e29e77
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Sat Apr 26 09:47:45 2014 -0700

    Compiles for Android

commit 4a300d1b9225fa5708f25a69a50bb531f0ac1a32
Author: Ricardo Quesada <ricardoquesada@gmail.com>
Date:   Sat Apr 26 09:13:35 2014 -0700

    Fixes the includes
2014-04-26 10:11:22 -07:00
Huabing.Xu feec24e3ef Merge branch 'v3' into develop_migrate_math_lib_merge
Conflicts:
	build/cocos2d_libs.xcodeproj/project.pbxproj
	cocos/2d/CCNode.cpp
	cocos/2d/CCRenderTexture.cpp
	cocos/2d/platform/wp8/CCGLView.h
	cocos/physics/CCPhysicsBody.cpp
	extensions/physics-nodes/CCPhysicsSprite.cpp
	extensions/physics-nodes/CCPhysicsSprite.h
	tests/cpp-tests/Classes/PhysicsTest/PhysicsTest.cpp
2014-04-25 16:20:24 +08:00
boyu0 710fe9d940 closed #4771: modify test. 2014-04-21 13:32:47 +08:00
Huabing.Xu d14d3007d0 remove kazmath include file 2014-04-16 14:08:58 +08:00
Huabing.Xu 63b52dd287 replace Point with Vector2 in cocos folder cpp file 2014-04-15 18:13:57 +08:00
Huabing.Xu 511e868ac4 migrate getAnchorPoint, getAnchorPointInPoints and relative member variable to Vector2 2014-04-15 16:59:16 +08:00
Huabing.Xu e351b778c1 migrate setAnchorPoint to Vector2 2014-04-15 16:47:29 +08:00
Huabing.Xu 6686b657a4 Migrate getPostion and correspondent member variable to Vector2 2014-04-15 16:28:59 +08:00
Huabing.Xu 071cbc7565 migrate setPosition to Vector2 2014-04-15 16:16:14 +08:00
Huabing.Xu ec2ef0f64b migrate convertXXXX to Vector2 step2 2014-04-15 14:41:09 +08:00
Huabing.Xu 633173005b migrate convertXXXX to Vector2 2014-04-15 14:29:12 +08:00
Huabing.Xu 44be9a38ec Node convertToNodeSpace and convertToWorldSpace use Vector2 2014-04-15 14:09:46 +08:00
boyu0 b53961b78d issue $4771: fix lua test and fix some bugs 2014-04-15 13:40:44 +08:00
boyu0 c98f50026f issue $4771: move PhysicsWorld to layer. 2014-04-15 03:21:18 +08:00
Huabing.Xu 80f96398b3 1. changed comment message in CCNode.cpp
2. changed Director projection to Matrix
2014-04-14 09:30:51 +08:00
Huabing.Xu 1670e07300 Merge branch 'develop' into develop_migrate_math_lib_merge
Conflicts:
	build/cocos2d_libs.xcodeproj/project.pbxproj
	build/cocos2d_tests.xcodeproj/project.pbxproj
2014-04-11 11:18:13 +08:00
Huabing.Xu 591b1e9231 remove kmMat4 in Node.cpp 2014-04-10 23:12:29 +08:00
Huabing.Xu 231cdcb906 adjust comment message 2014-04-10 11:14:46 +08:00
James Chen 9d8d256bee issue #4729: Android build works ok. 2014-04-10 00:36:42 +08:00
Huabing.Xu 409b696bab remove kmMat4 interface in class Node 2014-04-08 23:05:33 +08:00
Huabing.Xu fcff284fd5 getParentToNodeTransform return Matrix 2014-04-08 22:13:59 +08:00
Huabing.Xu 3837c23ebe draw() using Matrix instead of kmMat4 2014-04-08 22:07:35 +08:00
Huabing.Xu b9af100493 visit() using Matrix instead of kmMat4 2014-04-08 21:45:54 +08:00
Huabing.Xu e8596094a4 Merge branch 'develop' into develop_migrate_math_lib_merge 2014-04-08 16:58:51 +08:00
Darragh Coy 9a6b93eae1 Add extra CCNode verification
Add a check to the CCNode destructor to catch a common cocos2d-x programming mistake - forgetting to call base class onExit() in derived class onExit() implementations. We can check for this invalid API usage by checking if the node is still marked as running on destruction. If the node still thinks it's running then it's likely the cleanup logic performed by Node::onExit() was not done.
2014-04-07 17:05:42 -07:00
Huabing.Xu 5d70170a4b getNodetoParentTransform getNodeToWorldTransform return Matrix instead of kmMat4 2014-04-04 18:41:29 +08:00
Huabing.Xu 6b4451482f remove matrixToKmMat4 function 2014-04-04 18:13:10 +08:00
Huabing.Xu f1b1678900 Director::getMatrix returns Matrix instead of kmMat4 2014-04-04 17:31:21 +08:00
Huabing.Xu 67e62ce73d readied director::getMatrix again. remove kmGLgetMatrix 2014-04-03 17:26:06 +08:00
Huabing.Xu 79f62f4351 comment out director::getMatrix temporarily 2014-04-03 10:33:59 +08:00
Huabing.Xu 49de7511f5 migrate Vertex3f to Vector3 2014-04-02 15:06:16 +08:00
James Chen ecad5ea3ce Fixed `ExtensionTest/CocoStudioComponentsTest` crash after applying PR #6011. 2014-03-28 14:55:15 +08:00
James Chen e87f6991cf User object has to be released before others, since userObject may have a weak reference of this node.
It may invoke `node->stopAllAction();` while `_actionManager` is null if the next line is after `CC_SAFE_RELEASE_NULL(_actionManager)`.
2014-03-28 14:09:51 +08:00
Darragh Coy 8ee90389b4 Review feedback: Wrap the debug verification in additional macros which are disabled by default.
Require the user to enable 'CC_NODE_DEBUG_VERIFY_EVENT_LISTENERS' in ccConfig.h in order to enable the debug checks in debug builds.
2014-03-27 12:29:28 -07:00
Darragh Coy 0ee1095e37 Fix crashes in event dispatch other related safety checks/fixes
1: Add a fix to prevent events from being sent to scene nodes which are destroyed. Previously when a node was being destroyed it would try to unregister any event listeners it would have. This process would fail however in the case where event dispatching was already underway because we can't modify the listeners list while we are iterating through it. This is a pretty common occurrence since we often tear down & switch scenes in response to button clicks etc. Fix the problem by nulling out the slot for the listener we are removing in this case, so that it's node no longer receives any events after it is destroyed. The event dispatching code will cleanup this unused/nulled slot once the event processing loop has terminated.

2: When removing an event listener in cocos2d::EventDispatcher, ensure immediately it gets removed from the node priority map and dirty nodes set in order to ensure we don't inadvertently access any dangling pointers to nodes.

3: Add debug checks to ensure nodes have no associated event listeners after they are destroyed. This check will catch the problem fixed by (1) if it is still present.

4: Add some extra debug sanity checks in the event dispatcher to ensure nodes are not added to the lists twice and that they are being properly removed from the lists under certain conditions.

5: In cocos2d::Node's destructor NULL out members after releasing them in case they somehow happen to be accessed during the destructor. Move the release of the event dispatcher to the very end, since we need to check against it in debug.
2014-03-26 13:12:44 -07:00
James Chen 45b98e7dc0 issue #4541: s_globalOrderOfArrival is an static variable of Node class. 2014-03-25 15:07:11 +08:00
heliclei c26b103b23 remove node name related features from v3.0 2014-03-13 10:45:02 +08:00
heliclei 2a3cb0847e refactor api name 2014-03-12 18:10:45 +08:00
heliclei a907580d0a use lambda callback 2014-03-12 14:15:45 +08:00
heliclei 80417f0f35 correct naming convetion 2014-03-11 15:27:28 +08:00
heliclei 8db680b9ee add EnumChildNodesByName, walk node tree with callback 2014-03-11 13:58:43 +08:00
James Chen 63292b5ba6 Merge pull request #5544 from heliclei/node-string-tag
CCNode:Add String tag, to support runtime manipulation
2014-03-10 18:26:51 +08:00
James Chen eca0bce1be Merge pull request #5633 from huangml/patch-1
closed #4319: Node::removeAllChildrenWithCleanup() does not remove PhysicsBody.
2014-03-10 10:55:54 +08:00
James Chen 7aec578b35 closed #3290: The order of onEnter works correctly on JSB and LuaBindings. 2014-03-08 22:07:55 +08:00
黄梦龙 8b737d8aab Update CCNode.cpp
removeAllChildrenWithCleanup() not remove PhysicsBody
2014-03-08 17:42:35 +08:00
Huabing.Xu 9fc6177570 fix bug for outdated transform status 2014-03-07 10:03:34 +08:00
heliclei 55080d713b refactor string tag to name 2014-03-05 17:03:25 +08:00
heliclei cbec0f9a15 CCNode:Add String tag, to support runtime manipulation 2014-03-05 00:15:01 +08:00
Ricardo Quesada 8bdfce9bbe Merge branch 'develop' into visit_draw_improved 2014-03-03 17:31:29 -08:00
Ricardo Quesada 81f5254e15 Removes setNormalizedPosition
This funciton is useful, but the code is buggy.
In should check the parents' position instead of Director::Size()
Let's do it correctly, and then re-add this function
2014-03-03 16:08:30 -08:00
Ricardo Quesada c386f88e32 Merge branch 'develop' into visit_draw_improved
Conflicts:
	CHANGELOG
	cocos/gui/UILayout.h
2014-03-03 11:27:42 -08:00
minggo 594342ea3e Merge pull request #5505 from dumganhar/event-dispatcher-refactor
[EventDispatcher] Adds 'pauseEventListenersForTarget', 'resumeEventListenersForTarget' and 'removeEventListenersForTarget'.
2014-03-03 17:56:57 +08:00
minggo be0ac5dc1c Merge pull request #5493 from boyu0/bug4150_physics_position_rotation
closed #4150: fix physics position and rotation bug.
2014-03-03 14:57:33 +08:00
James Chen 757425c54b issue #4165: Scheduler::scheduleCallback -> Scheduler::schedule, Scheduler::scheduleSelector -> Scheduler::schedule. APIs are clear for c++ developers now. 2014-03-03 11:00:30 +08:00
boyu0 c99b0a0b6a closed #4150: Fix missing "!" 2014-03-03 01:48:56 +08:00
James Chen f3949e078b [EventDispatcher] Adds 'pauseEventListenersForTarget', 'resumeEventListenersForTarget' and 'removeEventListenersForTarget'. 2014-03-02 17:41:18 +08:00
Ricardo Quesada cdc19eea1c Nodes: setAdditionalTransform() receives a pointer
and not a const reference.
If the pointer is `NULL`, then it won't use the additionalTransform
2014-03-01 08:26:54 -08:00
James Chen e6d2c4ec73 Refactors Scheduler class.
* Timer is an abstract class now.
* Adds three new timers ( `TimerTargetSelector`, `TimerTargetCallback`, `TimerScriptHandler`) which are inherited from Timer.
* Adds new API 'scheduleCallback` / `unscheduleCallbackForKey', and callback's target could be any classes since we're using `void*` to identify target.
* `Scheduler::scheduleCallback` use `std::function`, therefore, it supports passing `lambda`, `member_function` and `global_function`.
* The old selector API is still kept since it's very useful when schedule callback is a member function, it doesn't need a `key` to identify the callback function. (+1 squashed commit)
* Adds relevant test cases.
2014-03-01 14:09:09 +08:00
Ricardo Quesada 3588041409 removed empty spaces 2014-02-28 16:39:04 -08:00
Ricardo Quesada d78304599d Cache working OK.
Performance increased in 20% for static objects.
2014-02-28 16:10:48 -08:00
Ricardo Quesada 13b60c8759 Applies Wu Hao's patch for 2.5D 2014-02-28 13:48:00 -08:00
Ricardo Quesada 6920bec6ef transform object returns the MV
code cleaner.
the kmGL code is altogether
2014-02-28 11:20:53 -08:00
boyu0 a934d29c57 issue #4150: Correct body position with the node has a parent. Add set/getPosition/Rotation method. 2014-02-28 15:31:25 +08:00
Ricardo Quesada eb66ddd931 visit and draw improved.
`visit()` and `draw()` are improved.
they both receive:
 - `Renderer`
 - `kmMat4` for transformation
 - `bool` whether or not the transform changed from the previous frame

Although `draw` and `visit` are not using the 3 new parameters,
they will start using it in the coming days (or weeks, or months).

Those parameters are needed for:
 - `Renderer` shouldn't be a singleton. There should be one renderer per Director. There could be more than one renderer
 - we should get rid of `kmGLXXX` functions since nodoby knows what is happening. the `kmMat4` is for that.
 - whenever possible, we should try to optimize the multiplications. the `dirty` flag is for that.

We need those changes, so, it is better to change the API now, and not right after v3.0-final is released.
2014-02-27 21:43:54 -08:00
boyu0 8c536589df Merge branch 'develop' of https://github.com/cocos2d/cocos2d-x into iss4118_physical_performance_improve 2014-02-27 20:04:04 +08:00
minggo 8d47d5f16a return immediately when no changing 2014-02-27 15:12:57 +08:00
boyu0 b63641c7a5 issue #4118: delete physicsSetPosition/Rotation method and add physics position/rotation tag. 2014-02-27 14:36:09 +08:00
boyu0 f400c1ac68 issue #4118: edit contact test and fix node setPhysicsBody bug 2014-02-27 13:35:37 +08:00
boyu0 4df1e104f3 issue #4118: improve performance. 2014-02-26 19:56:52 +08:00
James Chen 5e315273f9 Merge pull request #5467 from boyu0/bug4144_node_setphysicsbody
closed #4144: fix bug: Can not use Node::setPhysicsBody to reset a physics body.
2014-02-26 11:43:19 +08:00
boyu0 912dad7a71 closed #4144: fix bug: Node::setPhysicsBody doesn't work at the second time. 2014-02-26 10:53:41 +08:00
boyu0 a4cc0edb4a issue #4118: refactor physics update 2014-02-24 16:17:42 +08:00
Ricardo Quesada fe1160cd8c changes in API to support 3D 2014-02-22 19:16:42 -08:00
James Chen 0d8846d876 closed #4097: Adds a macro to disable inserting script binding relevant codes. 2014-02-20 16:40:46 +08:00
James Chen 5e6130c92c issue #4058: Get rid of Object ,rename it to Ref. 2014-02-20 10:53:49 +08:00
Ricardo Quesada 7a8707cb08 Merge branch 'develop' into local_z_Order_fixes
Conflicts:
	cocos/2d/CCNode.cpp
	cocos/2d/CCNode.h
2014-01-21 10:10:50 -08:00
Ricardo Quesada f1444a26a1 Improves documentation with local z order 2014-01-21 09:26:58 -08:00
James Chen 0f9c3fa59c closed #3789: EventDispatcher supports sorting listeners by global Z and local Z order. And adds relevant test case. 2014-01-21 10:23:05 +08:00
James Chen 9f793f8a9b Warning fixes: 1) getZOrder —> getLocalZOrder. 2) long —> int 2014-01-20 15:03:30 +08:00
Ricardo Quesada 5fcbf42356 GlobalZOrder is used for render priority...
...and not vertexZ

Node::setGlobalZOrder() is used to change that.

Node::setZOrder() -> Node::setLocalZOrder();
2014-01-18 11:38:06 -08:00
Ricardo Quesada f2c3d2f3ae Camera and Node fixes
OrbitCamera: added getters (public). Setters moved from `protected` to `public
	: Improved API. Instead of using "out" parameters for getters, it returns a `kmVec3`
 	: Setters receives `kmVec3` as well. Old API is still supported

Node: `setAdditionalTransform` doesn't get `dirty` on the next frame.
	Instead, once the additional transform is set, in order to remove it the user needs to pass
	the identity matrix
2014-01-13 12:52:07 -08:00
walzer 64af0de648 update copyrights for 2014, in cocos/2d/ folder 2014-01-07 11:25:07 +08:00
Ricardo Quesada 5a0284c183 Node vertex Z fix
Node correctly  sets the Z vertex in getNodeToParentTransform(),
and not in transform().

This is the correct thing to do, and also fixes possible collisions
with the additionalTransform (eg: Camera)
2014-01-03 17:54:07 -08:00
Ricardo Quesada a7b33e3ec3 Fixes NodeToWorld
Multiplication was in the incorrect order
2014-01-03 14:21:33 -08:00
James Chen 200f07dc34 closed #3290: [JSB] The order of onEnter and onExit is wrong. For develop branch. 2013-12-30 11:10:02 +08:00
James Chen 9baa64f274 Merge pull request #4688 from walzer/develop
make CC_USE_PHYSICS can ACTUALLY be switch off
2013-12-27 04:04:48 -08:00
James Chen febc19ea8d Some warning fixes on linux. 2013-12-26 23:06:16 -08:00
walzer c5e95618d9 fixed #3517, make CC_USE_PHYSICS can be switch off, and bring Scene::update(float), Scene::addChild(...) out of CC_USE_PHYSICS segment 2013-12-26 23:55:05 +08:00
boyu0 3344c5243c change some const char* to const std::string& 2013-12-24 10:51:47 +08:00
Ricardo Quesada 4f435a8613 Adds getScene() to Node
helper function to get the Scene containing the Node
2013-12-21 12:28:49 -08:00
Ricardo Quesada d8ad5291f4 Nore camera 2013-12-20 16:33:31 -08:00
Ricardo Quesada 0703d974e2 NodeGrid fixes
Adds license
Removes unneded matrix
replaces std::for_each with for range-loop
2013-12-20 11:52:52 -08:00
minggo 756f8f7a11 Merge pull request #4482 from dabingnn/develop_gridNode
Develop grid node
2013-12-19 18:30:42 -08:00
Huabing.Xu 9fec597ff3 remove unreachable code 2013-12-19 21:36:44 +08:00
James Chen 3dc052db4f Fixes linux and windows building failure. 2013-12-19 20:32:22 +08:00
Huabing.Xu d51ad36613 Merge branch 'develop' into develop_gridNode
* develop: (67 commits)
  Adds const in ShaderTest2.h
  Skew works again!
  [AUTO] : updating submodule reference to latest autogenerated bindings
  [AUTO] : updating submodule reference to latest autogenerated bindings
  Reverts submodule.
  Updates submodule of bindings-generator.
  Adds `std::for_each` test in invocation
  Reverts bindings-generator.
  fixed not render
  iterator in Sprite fixes
  update vs project for removes unneeded files
  getNodeToParentTransform fixes
  Node cleanup
  [AUTO] : updating submodule reference to latest autogenerated bindings
  Improves SpriteTest
  [AUTO] : updating submodule reference to latest autogenerated bindings
  Android and Linux fixes
  removes `using namespace std` from header file
  Removes unneeded files
  change play arguments
  ...

Conflicts:
	cocos/2d/CCNode.cpp
	samples/Cpp/TestCpp/Classes/ExtensionsTest/CocoStudioArmatureTest/ArmatureScene.cpp
2013-12-19 17:20:22 +08:00
boyu0 ef54ed3c15 Merge branch 'develop' of https://github.com/cocos2d/cocos2d-x into HEAD
Conflicts:
	cocos/2d/CCLabel.cpp
	cocos/2d/CCLabel.h
	cocos/2d/CCLabelBMFont.cpp
	cocos/2d/CCLabelBMFont.h
	cocos/2d/CCLayer.cpp
	cocos/2d/CCLayer.h
	cocos/2d/CCNode.cpp
	extensions/GUI/CCControlExtension/CCControl.cpp
	extensions/GUI/CCControlExtension/CCControlButton.cpp
	extensions/GUI/CCControlExtension/CCScale9Sprite.cpp
	tools/tojs/cocos2dx.ini
2013-12-19 17:05:59 +08:00
Ricardo Quesada 1d3cc7a24c Skew works again! 2013-12-18 21:11:06 -08:00
Ricardo Quesada d138925aa0 Merge branch 'develop' into node_fixes 2013-12-18 18:33:56 -08:00
Ricardo Quesada b9a64725ab iterator in Sprite fixes
And replaces some std::for_each() with for() to prevent another object in the stack.
2013-12-18 18:33:04 -08:00
minggo 9fc28e6c7d Merge pull request #4534 from boyu0/edit_hungarian_notation
Edit hungarian notation
2013-12-18 18:10:17 -08:00
Ricardo Quesada 89701f5006 getNodeToParentTransform fixes
Code is cleaner.
`Armature` calls parent to reduce code.

[]: Skew is still not working properly
2013-12-18 18:00:55 -08:00
boyu0 c6cc77e75b Merge branch 'develop' of https://github.com/cocos2d/cocos2d-x into edit_hungarian_notation 2013-12-19 09:45:21 +08:00
Ricardo Quesada 8390e7eadb Node cleanup
Uses "normal" interation without the lambda to prevent another object in the stack.

removed unused code.
2013-12-18 16:56:59 -08:00
boyu0 082c3d274a Merge branch 'develop' of https://github.com/cocos2d/cocos2d-x into edit_hungarian_notation 2013-12-18 18:05:30 +08:00
boyu0 e07c4ffec1 Change NULL to nullptr, edit hungarian notation. 2013-12-18 17:47:20 +08:00
Dhilan007 2d9b7ee4fc update vs project for new renderer and fix compiling fail on vs. 2013-12-18 14:36:49 +08:00
Huabing.Xu 25fc3d3c2a Merge branch 'develop' into develop_gridNode
* develop: (105 commits)
  update armature to new render
  iOS & Mac project fix.
  [AUTO] : updating submodule reference to latest autogenerated bindings
  use size_t replace unsigned int for record redeque::size returned value.
  issue #2171: Updates CMakeLists.txt.
  issue #2171: Binds New renderer classes, ignores NewTextureAtlas.
  issue #2171: Adds header files of renderer in cocos2d.h.
  issue #2171: Reorder renderer files for iOS & mac project.
  issue #2171: small fix in ccTypes.h
  issue #2171: Don’t ‘using namespace std;’ in header file.
  [AUTO] : updating submodule reference to latest autogenerated bindings
  issue #2171: Ignores Director::getFrustum.
  issue #2171: Fixing compilation errors for Linux port.
  issue #2171: NULL —> nullptr for Android warning of CCBAnimationManager.cpp.
  issue #2171: [New Renderer] Fixing compilation errors for Android.
  [Win32] fix argument type. - argument of interface is ssize_t.
  Update AUTHORS [ci skip]
  Update CHANGELOG [ci skip]
  Add mouse scrolling support for extension test
  issue #3341:fix Incorrect at TextureCache::addImageAsync for repeatedly execute for the same image
  ...

Conflicts:
	cocos/2d/CCNode.cpp
	cocos/2d/cocos2d.vcxproj.filters
	samples/Cpp/TestCpp/Classes/ExtensionsTest/CocoStudioArmatureTest/ArmatureScene.cpp
2013-12-17 18:16:05 +08:00
James Chen d16fa07661 Removes Vector<T>::forEach, please use std::for_each instead. The same as Vector<T>::sort. 2013-12-17 17:45:29 +08:00
James Chen 2a38d4fe94 issue #2171: Fixing compilation errors for Linux port. 2013-12-17 14:50:40 +08:00
Huabing.Xu b1eacd52cb Merge branch 'develop' into develop_gridNode
* develop:
  fix compile error related to ssize_t.
  issue #2771: add and change some physics API, and add more documents
  [AUTO] : updating submodule reference to latest autogenerated bindings
  Some fixes for XXX:getDescription.
  Reverts CCSpriteBatchNode.h
  size_t —> ssize_t in CCTMXLayer.cpp
  issue #2771: add PhysicsWorld function set/getUpdateRate and set/getSpeed. Change name PhysicsQueryRectCallbackFunc and PhysicsPointQueryCallbackFunc to PhysicsRectQueryCallbackFunc and PhysicsQueryPointCallbackFunc
  Fix:Add lua binding of ’registerScriptHandler’、’unregisterScriptHandler’ and ’removeObjectAllHandlers’ of ScriptHandlerMgr and some constants define
  [AUTO] : updating submodule reference to latest autogenerated bindings
  More renames of description() to getDescription()
  getDescription() works as expected
  fix compiling error after fixing conflicts
  fix compiling error after fixing conflicts
  use ssize_t for index
  use ssize_t for index and capacity
  use ssize_t for capacity and index in containers
  Fix:Remove some needless lua binding functions and resolve a bug
2013-12-16 10:43:49 +08:00
boyu0 f9f816caf9 issue #3162: change log to cpp file 2013-12-16 03:42:54 +08:00
Ricardo Quesada 3838268fd0 Merge branch 'develop' into newRenderer 2013-12-14 19:28:01 -08:00
boyu0 defae416f3 Merge branch 'develop' of git://github.com/cocos2d/cocos2d-x into bug3162_opacity_incorrect 2013-12-13 18:09:39 +08:00
James Chen bb5ef615dd Merge branch 'develop' of git://github.com/cocos2d/cocos2d-x into pr4479
Conflicts:
	cocos/2d/CCSpriteBatchNode.h
2013-12-13 16:44:22 +08:00
boyu0 d4c8fb0be6 Merge branch 'develop' of git://github.com/cocos2d/cocos2d-x into bug3162_opacity_incorrect 2013-12-13 10:47:52 +08:00
Ricardo Quesada 61cc365d9e Merge branch 'develop' into newRenderer
Conflicts:
	cocos/2d/CCGLProgram.h
	cocos/2d/CCLabelTTF.h
2013-12-12 14:41:42 -08:00
Ricardo Quesada a8c317bd83 getDescription() works as expected
renames `description` to `getDescription`. Adds `virtual`  to it.
Adds `getDescription` to missing nodes.
2013-12-12 14:30:22 -08:00
Ricardo Quesada 29a15c885a Merge branch 'develop' into newRenderer 2013-12-12 11:44:09 -08:00
boyu0 d7106d49be Merge branch 'develop' of https://github.com/cocos2d/cocos2d-x into bug3162_opacity_incorrect 2013-12-12 17:04:21 +08:00
Huabing.Xu 5509bd48ef remove _grid 2013-12-12 16:21:21 +08:00
Huabing.Xu 09a9b1f557 remove setGrid getGrid in class Node 2013-12-12 15:15:43 +08:00
minggo 1e9c763b40 use ssize_t for index and capacity 2013-12-12 14:48:26 +08:00
James Chen b2e8bdce1e issue #2790: Uses StringUtils::format for Node::description(). 2013-12-12 09:47:35 +08:00
James Chen cc567a3077 issue #2790: Vector::remove —> Vector::erase. 2013-12-11 18:08:06 +08:00
James Chen be9bb6998b issue #2790: Deprecates Dictionary, Array, String, Integer, Bool, Float, Double classes.
Also renames Map::remove to Map::erase.
2013-12-11 18:08:06 +08:00
boyu0 463ae20ce6 issue #3162: Add layer cascade color and cascade opacity test, fix bugs 2013-12-11 15:57:20 +08:00
Ricardo Quesada 23222923bf Migrated code to Matrix4 2013-12-10 11:07:15 -08:00
Ricardo Quesada 0222c6544e Migration to Mat4x4
Armature not migrated yet

Signed-off-by: Ricardo Quesada <ricardoquesada@gmail.com>
2013-12-09 17:32:51 -08:00
Ricardo Quesada ee0ef6bf46 ProgressTimer works OK
Adds _modelViewTransform as  ivar of Node (temporary fix)
2013-12-06 17:42:16 -08:00
boyu0 0e94d4f3b8 closed #3162: fix indent. 2013-12-06 18:23:31 +08:00
boyu0 4d0e3dbd8d Merge branch 'develop' of https://github.com/cocos2d/cocos2d-x into bug3162_opacity_incorrect 2013-12-06 18:16:26 +08:00
boyu0 af5f496861 issue #3162: Merge Node and NodeRGBA, fix bug: Child's opacity will not be changed when its parent's setCascadeOpacityEnabled was set to true and opacity was changed. 2013-12-06 18:07:16 +08:00
minggo b67d567a79 replace long with int or ssize_t 2013-12-05 17:22:22 +08:00
James Chen 499a0404d4 issue #2790: Renames some functions in Vector<T>. Makes it more like stl vector. 2013-12-05 10:35:10 +08:00
James Chen ceaa1f26bb issue #2790: Windows run ok with ValueDict for FileUtils. 2013-12-04 16:02:54 +08:00
James Chen 9928e8bef1 issue #2790: Uses Vector<T>::getObjectAtIndex instead of Vector<T>[] operator to avoid some mistakes. 2013-12-04 16:01:55 +08:00
James Chen 1d5984b29a issue #2790: Vector::makeObjectsPerformCallback —> Vector::forEach 2013-12-04 16:01:02 +08:00
James Chen d4d864216b issue #2790: Deletes Vector::init, adds Vector::setCapacity. 2013-12-04 16:00:18 +08:00
James Chen 90062b656d issue #2790: Node::_children is Vector<Node*> now. 2013-12-04 16:00:17 +08:00
boyu0 fd68dc4f9f issue #2771: add condition test to updatePhysicsTransform 2013-12-03 16:28:18 +08:00
minggo a057274115 set z order after reorder 2013-11-14 14:08:50 +08:00
Ricardo Quesada ba7ed6e578 Fixes some compiler warnings
The warnings are related to:

* 64-to-32-bit conversion
* shadow variables
2013-11-04 16:31:36 -08:00
boyu0 2f67ceb495 issue #2771: fix some code style 2013-11-01 16:26:03 +08:00
boyu0 e8d06496d0 Merge branch 'develop' of https://github.com/cocos2d/cocos2d-x into iss2771_physical 2013-10-30 17:27:09 +08:00
boyu0 66d1bbd89f issue #2771: edit physics effect with all bodies and fix some bugs 2013-10-28 16:17:19 +08:00
boyu0 d0d8694091 issue #2771: fix some retain/release bugs 2013-10-28 11:08:41 +08:00
James Chen 48ce5e39fe EventDispatcher is managed by Director now, like Scheduler and ActionManager. 2013-10-26 15:04:01 +08:00
James Chen c4f9acbee7 disable DUMP_LISTENER_ITEM_PRIORITY_INFO. use std::unordered_map instead of std::map. 2013-10-25 10:53:47 +08:00
James Chen dc6e201eb6 bug fix for eventdispatcher. 2013-10-25 10:53:46 +08:00
James Chen 1f3863e787 Event Dispatcher refactor commit. TestCpp could run. 2013-10-25 10:53:45 +08:00
James Chen f7e2c63230 Refactor event dispatcher. Remove non-node relative member variables. 2013-10-25 10:53:45 +08:00
James Chen cfaef2a01a Adding onEnterHook, onXXXHook for Node. 2013-10-25 10:53:45 +08:00
boyu0 d12ee5f120 Merge branch 'develop' of https://github.com/cocos2d/cocos2d-x into iss2771_physical 2013-10-18 15:34:13 +08:00
minggo 95acb1b9e3 issue #2905: helloworld build ok on android 2013-10-14 14:01:00 +08:00
minggo 49d7bbd600 issue #2905: remove sub folders except platform 2013-10-12 15:41:45 +08:00