MyMenu* MyMenu::create(const CCSize& contentSize,CCMenuItem* item, ...){ va_list args; va_start(args,item); MyMenu *pRet = new MyMenu(); CCArray* pArray = NULL; if( item ) { pArray = CCArray::create(item, NULL); CCMenuItem *i = va_arg(args, CCMenuItem*); while(i) { pArray->addObject(i); i = va_arg(args, CCMenuItem*); } } if (pRet && pRet->initWithArray(pArray)) { pRet->autorelease(); va_end(args); pRet->contentSizeByTiled = contentSize; MyTiledMenuItemSprite* myItem= dynamic_cast<MyTiledMenuItemSprite*>(item); if(myItem != NULL) { //TODO // myItem -> setTag(myTiledMenuItemTag); } return pRet; } va_end(args); CC_SAFE_DELETE(pRet); return NULL; }
MyMenu* MyMenu::createWithArray(CCArray* pArrayOfItems) { MyMenu *pRet = new MyMenu(); if (pRet && pRet->initWithArray(pArrayOfItems)) { pRet->autorelease(); } else { CC_SAFE_DELETE(pRet); } return pRet; }