#include "UIButtonTest_Editor.h" USING_NS_CC; using namespace cocos2d::ui; // UIButtonTest_Editor UIButtonEditorTests::UIButtonEditorTests() { ADD_TEST_CASE(UIButtonTest_Editor); } UIButtonTest_Editor::UIButtonTest_Editor() : _displayValueLabel(nullptr) { } UIButtonTest_Editor::~UIButtonTest_Editor() { } void UIButtonTest_Editor::configureGUIScene() { UIScene_Editor::configureGUIScene(); Layout* root = static_cast(_layout->getChildByName("root_Panel")); Button* button = static_cast(Helper::seekWidgetByName(root, "Button_123")); button->addTouchEventListener(CC_CALLBACK_2(UIButtonTest_Editor::touchEvent, this)); Button* title_button = static_cast(Helper::seekWidgetByName(root, "Button_126")); title_button->addTouchEventListener(CC_CALLBACK_2(UIButtonTest_Editor::touchEvent, this)); Button* scale9_button = static_cast(Helper::seekWidgetByName(root, "Button_129")); scale9_button->addTouchEventListener(CC_CALLBACK_2(UIButtonTest_Editor::touchEvent,this)); } bool UIButtonTest_Editor::init() { if (UIScene_Editor::init()) { Node* node = CSLoader::createNode("cocosui/UIEditorTest/UIButton/res.csb"); Node* child = node->getChildByTag(4); child->removeFromParent(); _layout = static_cast(child); _touchGroup->addChild(_layout); this->configureGUIScene(); _displayValueLabel = ui::Text::create(); _displayValueLabel->setFontName("Marker Felt"); _displayValueLabel->setFontSize(30); _displayValueLabel->setString("No event"); _displayValueLabel->setPosition(Vec2(_layout->getContentSize().width / 2, _layout->getContentSize().height - _displayValueLabel->getContentSize().height * 1.75f)); _touchGroup->addChild(_displayValueLabel,20); return true; } return false; } void UIButtonTest_Editor::touchEvent(Ref *pSender, Widget::TouchEventType type) { switch (type) { case Widget::TouchEventType::BEGAN: _displayValueLabel->setString("Touch Down"); break; case Widget::TouchEventType::MOVED: _displayValueLabel->setString("Touch Moved"); break; case Widget::TouchEventType::ENDED: _displayValueLabel->setString("Touch Ended"); break; case Widget::TouchEventType::CANCELED: _displayValueLabel->setString("Touch Canceled"); break; default: break; } }