PuzzleSDK
CustomEventTest类 参考

#include <NewEventDispatcherTest.h>

+ 类 CustomEventTest 继承关系图:
+ CustomEventTest 的协作图:

Public 成员函数

 CREATE_FUNC (CustomEventTest)
 
virtual void onEnter () override
 
virtual void onExit () override
 
virtual std::string title () const override
 
virtual std::string subtitle () const override
 
- Public 成员函数 继承自 TestCase
 TestCase ()
 
 ~TestCase ()
 
virtual Type getTestType () const
 
virtual float getDuration () const
 
virtual std::string getExpectedOutput () const
 
virtual std::string getActualOutput () const
 
virtual void restartTestCallback (cocos2d::Ref *sender)
 
virtual void nextTestCallback (cocos2d::Ref *sender)
 
virtual void priorTestCallback (cocos2d::Ref *sender)
 
virtual void onBackCallback (cocos2d::Ref *sender)
 
void setTestSuite (TestSuite *testSuite)
 
TestSuitegetTestSuite () const
 
float getRunTime () const
 
void setTestCaseName (const std::string &name)
 
std::string getTestCaseName () const
 
const cocos2d::Label * getSubtitleLable () const
 
const cocos2d::MenuItemImage * getRestartTestItem () const
 

Private 属性

cocos2d::EventListenerCustom * _listener
 
cocos2d::EventListenerCustom * _listener2
 

额外继承的成员函数

- Public 类型 继承自 TestCase
enum class  Type { ROBUSTNESS , UNIT , GRAPHICAL_STATIC , MANUAL }
 
- Public 属性 继承自 TestCase
CC_CONSTRUCTOR_ACCESS __pad0__: virtual bool init() override
 
- Protected 属性 继承自 TestCase
cocos2d::MenuItemImage * _priorTestItem
 
cocos2d::MenuItemImage * _restartTestItem
 
cocos2d::MenuItemImage * _nextTestItem
 
cocos2d::Label * _titleLabel
 
cocos2d::Label * _subtitleLabel
 

详细描述

在文件 NewEventDispatcherTest.h75 行定义.

成员函数说明

◆ CREATE_FUNC()

CustomEventTest::CREATE_FUNC ( CustomEventTest  )

◆ onEnter()

void CustomEventTest::onEnter ( )
overridevirtual

重载 TestCase .

在文件 NewEventDispatcherTest.cpp377 行定义.

378{
380
381 Vec2 origin = Director::getInstance()->getVisibleOrigin();
382 Size size = Director::getInstance()->getVisibleSize();
383
384 MenuItemFont::setFontSize(20);
385
386 auto statusLabel = Label::createWithSystemFont("No custom event 1 received!", "", 20);
387 statusLabel->setPosition(origin + Vec2(size.width/2, size.height-90));
388 addChild(statusLabel);
389
390 _listener = EventListenerCustom::create("game_custom_event1", [=](EventCustom* event){
391 std::string str("Custom event 1 received, ");
392 char* buf = static_cast<char*>(event->getUserData());
393 str += buf;
394 str += " times";
395 statusLabel->setString(str.c_str());
396 });
397
398 _eventDispatcher->addEventListenerWithFixedPriority(_listener, 1);
399
400 auto sendItem = MenuItemFont::create("Send Custom Event 1", [=](Ref* sender){
401 static int count = 0;
402 ++count;
403 char* buf = new char[10];
404 sprintf(buf, "%d", count);
405 EventCustom event("game_custom_event1");
406 event.setUserData(buf);
407 _eventDispatcher->dispatchEvent(&event);
408 CC_SAFE_DELETE_ARRAY(buf);
409 });
410 sendItem->setPosition(origin + Vec2(size.width/2, size.height/2));
411
412 auto statusLabel2 = Label::createWithSystemFont("No custom event 2 received!", "", 20);
413 statusLabel2->setPosition(origin + Vec2(size.width/2, size.height-120));
414 addChild(statusLabel2);
415
416 _listener2 = EventListenerCustom::create("game_custom_event2", [=](EventCustom* event){
417 std::string str("Custom event 2 received, ");
418 char* buf = static_cast<char*>(event->getUserData());
419 str += buf;
420 str += " times";
421 statusLabel2->setString(str.c_str());
422 });
423
424 _eventDispatcher->addEventListenerWithFixedPriority(_listener2, 1);
425
426 auto sendItem2 = MenuItemFont::create("Send Custom Event 2", [=](Ref* sender){
427 static int count = 0;
428 ++count;
429 char* buf = new char[10];
430 sprintf(buf, "%d", count);
431 EventCustom event("game_custom_event2");
432 event.setUserData(buf);
433 _eventDispatcher->dispatchEvent(&event);
434 CC_SAFE_DELETE_ARRAY(buf);
435 });
436 sendItem2->setPosition(origin + Vec2(size.width/2, size.height/2 - 40));
437
438 auto menu = Menu::create(sendItem, sendItem2, nullptr);
439 menu->setPosition(Vec2(0, 0));
440 menu->setAnchorPoint(Vec2(0, 0));
441 addChild(menu, -1);
442}
cocos2d::EventListenerCustom * _listener
cocos2d::EventListenerCustom * _listener2
virtual void onEnter() override
Definition: BaseTest.cpp:430

引用了 _listener, _listener2 , 以及 TestCase::onEnter().

+ 函数调用图:

◆ onExit()

void CustomEventTest::onExit ( )
overridevirtual

在文件 NewEventDispatcherTest.cpp444 行定义.

445{
446 _eventDispatcher->removeEventListener(_listener);
447 _eventDispatcher->removeEventListener(_listener2);
448 EventDispatcherTestDemo::onExit();
449}

引用了 _listener , 以及 _listener2.

◆ subtitle()

std::string CustomEventTest::subtitle ( ) const
overridevirtual

重载 TestCase .

在文件 NewEventDispatcherTest.cpp456 行定义.

457{
458 return "";
459}

◆ title()

std::string CustomEventTest::title ( ) const
overridevirtual

重载 EventDispatcherTestDemo .

在文件 NewEventDispatcherTest.cpp451 行定义.

452{
453 return "Send custom event";
454}

类成员变量说明

◆ _listener

cocos2d::EventListenerCustom* CustomEventTest::_listener
private

在文件 NewEventDispatcherTest.h84 行定义.

被这些函数引用 onEnter() , 以及 onExit().

◆ _listener2

cocos2d::EventListenerCustom* CustomEventTest::_listener2
private

在文件 NewEventDispatcherTest.h85 行定义.

被这些函数引用 onEnter() , 以及 onExit().


该类的文档由以下文件生成: