mirror of https://github.com/axmolengine/axmol.git
43 lines
1.2 KiB
C++
43 lines
1.2 KiB
C++
|
#include "GuideScene.h"
|
||
|
|
||
|
USING_NS_CC;
|
||
|
|
||
|
GuideScene::GuideScene():_guideLayer(nullptr)
|
||
|
{
|
||
|
|
||
|
}
|
||
|
|
||
|
GuideScene::~GuideScene()
|
||
|
{
|
||
|
CC_SAFE_RELEASE(_guideLayer);
|
||
|
}
|
||
|
|
||
|
void GuideScene::continueInit()
|
||
|
{
|
||
|
UIPackage::addPackage("UI/Guide");
|
||
|
|
||
|
_view = UIPackage::createObject("Guide", "Main")->as<GComponent>();
|
||
|
_groot->addChild(_view);
|
||
|
|
||
|
_guideLayer = UIPackage::createObject("Guide", "GuideLayer")->as<GComponent>();
|
||
|
_guideLayer->makeFullScreen();
|
||
|
_guideLayer->addRelation(_groot, RelationType::Size);
|
||
|
_guideLayer->retain();
|
||
|
|
||
|
GObject* bagBtn = _view->getChild("bagBtn");
|
||
|
bagBtn->addClickListener([this](EventContext*)
|
||
|
{
|
||
|
_guideLayer->removeFromParent();
|
||
|
});
|
||
|
|
||
|
_view->getChild("n2")->addClickListener([this, bagBtn](EventContext*)
|
||
|
{
|
||
|
_groot->addChild(_guideLayer); //!!Before using TransformRect(or GlobalToLocal), the object must be added first
|
||
|
Rect rect = bagBtn->transformRect(Rect(Vec2::ZERO, bagBtn->getSize()), _guideLayer);
|
||
|
|
||
|
GObject* window = _guideLayer->getChild("window");
|
||
|
window->setSize((int)rect.size.width, (int)rect.size.height);
|
||
|
|
||
|
GTween::to(window->getPosition(), rect.origin, 0.5f)->setTarget(window, TweenPropType::Position);
|
||
|
});
|
||
|
}
|