CCControlLoader.cpp 1.2 KB

123456789101112131415161718192021222324252627282930
  1. #include "editor-support/cocosbuilder/CCControlLoader.h"
  2. using namespace cocos2d;
  3. using namespace cocos2d::extension;
  4. namespace cocosbuilder {
  5. #define PROPERTY_ENABLED "enabled"
  6. #define PROPERTY_SELECTED "selected"
  7. #define PROPERTY_CCCONTROL "ccControl"
  8. void ControlLoader::onHandlePropTypeCheck(Node * pNode, Node * pParent, const char * pPropertyName, bool pCheck, CCBReader * ccbReader) {
  9. if(strcmp(pPropertyName, PROPERTY_ENABLED) == 0) {
  10. ((Control *)pNode)->setEnabled(pCheck);
  11. } else if(strcmp(pPropertyName, PROPERTY_SELECTED) == 0) {
  12. ((Control *)pNode)->setSelected(pCheck);
  13. } else {
  14. NodeLoader::onHandlePropTypeCheck(pNode, pParent, pPropertyName, pCheck, ccbReader);
  15. }
  16. }
  17. void ControlLoader::onHandlePropTypeBlockControl(Node * pNode, Node * pParent, const char * pPropertyName, BlockControlData * pBlockControlData, CCBReader * ccbReader) {
  18. if(strcmp(pPropertyName, PROPERTY_CCCONTROL) == 0) {
  19. ((Control *)pNode)->addTargetWithActionForControlEvents(pBlockControlData->_target, pBlockControlData->mSELControlHandler, pBlockControlData->mControlEvents);
  20. } else {
  21. NodeLoader::onHandlePropTypeBlockControl(pNode, pParent, pPropertyName, pBlockControlData, ccbReader);
  22. }
  23. }
  24. }