From 7fdc37a70e46cf402a4b7bc20a963023d99ab759 Mon Sep 17 00:00:00 2001 From: andyque Date: Tue, 1 Jul 2014 14:43:20 +0800 Subject: [PATCH] add switch method to checkBoxTest --- .../UICheckBoxTest/UICheckBoxTest_Editor.cpp | 61 +++++++++++++------ .../UICheckBoxTest/UICheckBoxTest_Editor.h | 3 +- 2 files changed, 46 insertions(+), 18 deletions(-) diff --git a/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/UICheckBoxTest/UICheckBoxTest_Editor.cpp b/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/UICheckBoxTest/UICheckBoxTest_Editor.cpp index 097cae5079..07594f4ad1 100644 --- a/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/UICheckBoxTest/UICheckBoxTest_Editor.cpp +++ b/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/UICheckBoxTest/UICheckBoxTest_Editor.cpp @@ -16,27 +16,54 @@ UICheckBoxTest_Editor::~UICheckBoxTest_Editor() } +void UICheckBoxTest_Editor::switchLoadMethod(cocos2d::Ref *pSender) +{ + MenuItemToggle *item = (MenuItemToggle*)pSender; + + if (item->getSelectedIndex() == 0){ + _layout->removeFromParentAndCleanup(true); + + _layout = static_cast(cocostudio::GUIReader::getInstance()->widgetFromJsonFile("cocosui/UIEditorTest/UICheckBox_Editor/ui_checkbox_editor_1.json")); + _touchGroup->addChild(_layout); + + this->configureGUIScene(); + }else{ + _layout->removeFromParentAndCleanup(true); + + _layout = static_cast(cocostudio::GUIReader::getInstance()->widgetFromBinaryFile("cocosui/UIEditorTest/UICheckBox_Editor/ui_checkbox_editor_1.csb")); + _touchGroup->addChild(_layout); + + this->configureGUIScene(); + } +} + +void UICheckBoxTest_Editor::configureGUIScene() +{ + Size screenSize = CCDirector::getInstance()->getWinSize(); + Size rootSize = _layout->getContentSize(); + _touchGroup->setPosition(Vec2((screenSize.width - rootSize.width) / 2, + (screenSize.height - rootSize.height) / 2)); + + Layout* root = static_cast(_layout->getChildByName("root_Panel")); + + Text* back_label = static_cast(Helper::seekWidgetByName(root, "back")); + back_label->addTouchEventListener(CC_CALLBACK_2(UIScene_Editor::toGUIEditorTestScene, this)); + + _sceneTitle = static_cast(Helper::seekWidgetByName(root, "UItest")); + + CheckBox* checkbox = static_cast(Helper::seekWidgetByName(root, "CheckBox_540")); + checkbox->addEventListener(CC_CALLBACK_2(UICheckBoxTest_Editor::selectedStateEvent, this)); + +} + bool UICheckBoxTest_Editor::init() { if (UIScene_Editor::init()) { - _layout = static_cast(cocostudio::GUIReader::getInstance()->widgetFromBinaryFile("cocosui/UIEditorTest/UICheckBox_Editor/ui_checkbox_editor_1.csb")); -// _layout = static_cast(cocostudio::GUIReader::getInstance()->widgetFromJsonFile("cocosui/UIEditorTest/UICheckBox_Editor/ui_checkbox_editor_2.json")); + _layout = static_cast(cocostudio::GUIReader::getInstance()->widgetFromJsonFile("cocosui/UIEditorTest/UICheckBox_Editor/ui_checkbox_editor_1.json")); _touchGroup->addChild(_layout); - Size screenSize = CCDirector::getInstance()->getWinSize(); - Size rootSize = _layout->getContentSize(); - _touchGroup->setPosition(Vec2((screenSize.width - rootSize.width) / 2, - (screenSize.height - rootSize.height) / 2)); - - Layout* root = static_cast(_layout->getChildByName("root_Panel")); - - Text* back_label = static_cast(Helper::seekWidgetByName(root, "back")); - back_label->addTouchEventListener(CC_CALLBACK_2(UIScene_Editor::toGUIEditorTestScene, this)); - - _sceneTitle = static_cast(Helper::seekWidgetByName(root, "UItest")); - - CheckBox* checkbox = static_cast(Helper::seekWidgetByName(root, "CheckBox_540")); - checkbox->addEventListener(CC_CALLBACK_2(UICheckBoxTest_Editor::selectedStateEvent, this)); + + this->configureGUIScene(); _displayValueLabel = Text::create(); _displayValueLabel->setFontName("fonts/Marker Felt.ttf"); @@ -44,7 +71,7 @@ bool UICheckBoxTest_Editor::init() _displayValueLabel->setString("No event"); _displayValueLabel->setPosition(Vec2(_layout->getContentSize().width / 2, _layout->getContentSize().height - _displayValueLabel->getContentSize().height * 1.75f)); - _touchGroup->addChild(_displayValueLabel); + _touchGroup->addChild(_displayValueLabel,20); return true; } diff --git a/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/UICheckBoxTest/UICheckBoxTest_Editor.h b/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/UICheckBoxTest/UICheckBoxTest_Editor.h index c9ed1cb988..d2d03b7ce6 100644 --- a/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/UICheckBoxTest/UICheckBoxTest_Editor.h +++ b/tests/cpp-tests/Classes/UITest/CocoStudioGUITest/UICheckBoxTest/UICheckBoxTest_Editor.h @@ -34,7 +34,8 @@ public: ~UICheckBoxTest_Editor(); bool init(); void selectedStateEvent(Ref* pSender, CheckBox::EventType type); - + virtual void switchLoadMethod(Ref* pSender); + void configureGUIScene(); protected: UI_SCENE_EDITOR_CREATE_FUNC(UICheckBoxTest_Editor) Text* _displayValueLabel;