Ejemplo n.º 1
0
bool MainScene::init() {
	if (!Layer::init())
		return false;

	auto director = Director::getInstance();
	auto pView = director->getOpenGLView();
	pView->setDesignResolutionSize(RESOLUTION_WIDTH, RESOLUTION_HEIGHT, ResolutionPolicy::SHOW_ALL);

	Size visibleSize = director->getVisibleSize();
	Vec2 origin = director->getVisibleOrigin();

	//Title 'Kid Sudoku'
	auto labelTitle = Label::createWithTTF("Kid Remember It", "fonts/Marker Felt.ttf", 188);
	labelTitle->setTextColor(Color4B(0xe3, 0x54, 0xf4, 0xff));
	labelTitle->setPosition(Vec2(origin.x + visibleSize.width / 2,
						 	origin.y + visibleSize.height - labelTitle->getContentSize().height/2 - 40)
						);
	this->addChild(labelTitle);

	//Cool Papa-Legend announcement
	auto labelAnn = Label::createWithTTF("Cool Papa-Legend :   Produce product for our kids.", "fonts/Marker Felt.ttf", 30);
	labelAnn->setTextColor(Color4B(0x00, 0xff, 0x00, 0xff));
	labelAnn->setPosition(Vec2(origin.x + visibleSize.width / 2,
						 	labelTitle->getPosition().y - labelTitle->getContentSize().height/2 - 60 - labelAnn->getContentSize().height / 2)
						);
	this->addChild(labelAnn);

	//Campaign Button
	auto btnPlay = ui::Button::create("btn-menu-0.png",
											  "btn-menu-1.png",
											  "btn-menu-2.png");
	btnPlay->setScale9Enabled(true);
	btnPlay->setCapInsets(Rect(15, 15, 4, 4));
	btnPlay->setTitleText("Play");
	btnPlay->setTitleFontSize(40);
	btnPlay->setContentSize(Size(300, 90));
	btnPlay->setPosition(Vec2(origin.x + visibleSize.width / 2,
			 	 	 	   	 	  labelAnn->getPosition().y - labelAnn->getContentSize().height / 2 - 140 - btnPlay->getContentSize().height/2)
							);
	btnPlay->addClickEventListener(CC_CALLBACK_1(MainScene::onMenuPlayClicked, this));
	this->addChild(btnPlay, 1);

	//Exit Button
	auto btnExit = ui::Button::create("btn-menu-0.png",
											  "btn-menu-1.png",
											  "btn-menu-2.png");
	btnExit->setScale9Enabled(true);
	btnExit->setCapInsets(Rect(15, 15, 4, 4));
	btnExit->setTitleText("Exit");
	btnExit->setTitleFontSize(40);
	btnExit->setContentSize(Size(300, 90));
	btnExit->setPosition(Vec2(origin.x + visibleSize.width / 2,
							btnPlay->getPosition().y - btnPlay->getContentSize().height / 2 - 40 - btnExit->getContentSize().height/2)
							);
	btnExit->addClickEventListener(CC_CALLBACK_1(MainScene::onMenuExitClicked, this));
	this->addChild(btnExit, 1);
	return true;
}
Ejemplo n.º 2
0
bool NFCUISelectServer::initLayout()
{	
	if(!NFCUIDialog::initLayout())
		return false;

	m_pServerList = ui::ListView::create();
	m_pServerList->setSizeType(ui::SizeType::PERCENT);
	m_pServerList->setSizePercent(Vec2(0.1f, 0.25f));
	m_pServerList->setPositionType(ui::PositionType::PERCENT);
	m_pServerList->setPositionPercent(Vec2(0.5f, 0.5f));
	m_pServerList->setBackGroundColorType(ui::LayoutBackGroundColorType::SOLID);
	m_pServerList->setBackGroundColor(Color3B(150, 200, 255));
	m_pServerList->setAnchorPoint(Vec2(0.5, 0.5));
	m_pContent->addChild(m_pServerList);

	auto button = ui::Button::create();
	button->loadTextureNormal("Default/Button_Normal.png",ui::TextureResType::LOCAL);
	button->setScale9Enabled(true);
	button->setSizePercent(Vec2(1.0f, 0.2f));
	button->setSizeType(ui::SizeType::PERCENT);

	m_pServerList->setItemModel(button);
	
	g_pLoginLogic->AddEventCallBack(E_LoginEvent_WorldList, this, &NFCUISelectServer::OnWorldListEvent);
	g_pLoginLogic->AddEventCallBack(E_LoginEvent_ServerList, this, &NFCUISelectServer::OnServerListEvent);
	return true;
}
Ejemplo n.º 3
0
void Slider::copySpecialProperties(Widget *widget)
{
    Slider* slider = dynamic_cast<Slider*>(widget);
    if (slider)
    {
        _prevIgnoreSize = slider->_prevIgnoreSize;
        setScale9Enabled(slider->_scale9Enabled);

        // clone the inner sprite: https://github.com/cocos2d/cocos2d-x/issues/16928
        slider->_barRenderer->copyTo(_barRenderer);
        setupBarTexture();
        slider->_progressBarRenderer->copyTo(_progressBarRenderer);
        setupProgressBarTexture();

        loadSlidBallTextureNormal(slider->_slidBallNormalRenderer->getSpriteFrame());
        loadSlidBallTexturePressed(slider->_slidBallPressedRenderer->getSpriteFrame());
        loadSlidBallTextureDisabled(slider->_slidBallDisabledRenderer->getSpriteFrame());
        setPercent(slider->getPercent());
        setMaxPercent(slider->getMaxPercent());
        _isSliderBallPressedTextureLoaded = slider->_isSliderBallPressedTextureLoaded;
        _isSliderBallDisabledTexturedLoaded = slider->_isSliderBallDisabledTexturedLoaded;
        _sliderEventListener = slider->_sliderEventListener;
        _sliderEventSelector = slider->_sliderEventSelector;
        _eventCallback = slider->_eventCallback;
        _ccEventCallback = slider->_ccEventCallback;
    }
}
Ejemplo n.º 4
0
Layout* UI::createLayout(int i){
    auto lo=Layout::create();
    lo->setBackGroundImage("HelloWorld.png");
    lo->setBackGroundImageScale9Enabled(true);
    lo->setContentSize(Size(480,320)*1.5);
    for (int i=0; i<5; i++) {
        for (int j=0; j<7; j++) {
            auto ub=Button::create();
            ub->loadTextureNormal("editBG.png");
            ub->loadTexturePressed("editBG.png");
            ub->loadTextureDisabled("editBg.png");
            ub->setScale9Enabled(true);
            ub->setContentSize(Size(100,50));
            ub->setPressedActionEnabled(true);
            ub->setZoomScale(0.5f);
            ub->setTitleFontName("fonts/Marker Felt.ttf");
            ub->setTitleFontSize(30);
            ub->setTitleColor(Color3B::GREEN);
            ub->setTitleText(StringUtils::format("%d--%d",i,j));
            ub->addClickEventListener(CC_CALLBACK_1(UI::buttonClick, this));
            ub->setTag(i);
            ub->setPosition(Vec2(70+120*i, 35+j*60));
            lo->addChild(ub);
        }
    }
    return lo;
}
Ejemplo n.º 5
0
void Slider::copySpecialProperties(Widget *widget)
{
    Slider* slider = dynamic_cast<Slider*>(widget);
    if (slider)
    {
        _prevIgnoreSize = slider->_prevIgnoreSize;
        setScale9Enabled(slider->_scale9Enabled);
        auto barSprite = slider->_barRenderer->getSprite();
        if (nullptr != barSprite)
        {
            loadBarTexture(barSprite->getSpriteFrame());
        }
        auto progressSprite = slider->_progressBarRenderer->getSprite();
        if (nullptr != progressSprite)
        {
            loadProgressBarTexture(progressSprite->getSpriteFrame());
        }
        loadSlidBallTextureNormal(slider->_slidBallNormalRenderer->getSpriteFrame());
        loadSlidBallTexturePressed(slider->_slidBallPressedRenderer->getSpriteFrame());
        loadSlidBallTextureDisabled(slider->_slidBallDisabledRenderer->getSpriteFrame());
        setPercent(slider->getPercent());
        setMaxPercent(slider->getMaxPercent());
        _isSliderBallPressedTextureLoaded = slider->_isSliderBallPressedTextureLoaded;
        _isSliderBallDisabledTexturedLoaded = slider->_isSliderBallDisabledTexturedLoaded;
        _sliderEventListener = slider->_sliderEventListener;
        _sliderEventSelector = slider->_sliderEventSelector;
        _eventCallback = slider->_eventCallback;
        _ccEventCallback = slider->_ccEventCallback;
    }
}
bool SimplePage::initWithIndex(int newIndex)
{
    if(!Node::init())
        return  false;

    setName("secondPage");
    
    auto visibleSize=Director::getInstance()->getVisibleSize();
    auto rootNode= CSLoader::createNode("simplePage.csb");
    rootNode->setPosition(visibleSize/2);
    addChild(rootNode);
    
    auto listView=rootNode->getChildByName<ui::ListView *>("listView");
    
    const auto& data=CSVGlobalConfig::getInstance()->data;
    for(const auto& lineData : data)
    {
        auto buttonTitle=lineData[0];
        
        auto button=ui::Button::create("button.png");
        button->setScale9Enabled(true);
        button->setTitleFontSize(25);
        button->setContentSize(Size( 300,30));
        button->setTitleText(buttonTitle);
        button->addClickEventListener(CC_CALLBACK_1(SimplePage::onButtonClickCallBack, this));
        listView->pushBackCustomItem(button);
    }
    
    return true;
}
Ejemplo n.º 7
0
void UIButtonTestSwitchScale9::touchEvent(Ref *pSender, Widget::TouchEventType type)
{
    switch (type)
    {
        case Widget::TouchEventType::BEGAN:
            _displayValueLabel->setString(String::createWithFormat("Touch Down")->getCString());
            break;
            
        case Widget::TouchEventType::MOVED:
            _displayValueLabel->setString(String::createWithFormat("Touch Move")->getCString());
            break;
            
        case Widget::TouchEventType::ENDED:
        {
            _displayValueLabel->setString(String::createWithFormat("Touch Up")->getCString());
            auto btn = ((Button*)pSender);
            btn->setScale9Enabled(!btn->isScale9Enabled());
            btn->setContentSize(Size(200,100));
        }
            break;
            
        case Widget::TouchEventType::CANCELED:
            _displayValueLabel->setString(String::createWithFormat("Touch Cancelled")->getCString());
            break;
            
        default:
            break;
    }
}
Ejemplo n.º 8
0
void UI:: initImageView(){
    auto visibleSive=Director::getInstance()->getVisibleSize();
    auto iv=ImageView::create("HelloWorld.png");
    iv->setScale9Enabled(true);
    iv->setContentSize(cocos2d::Size(960,640));
    iv->setPosition(visibleSive/2);
    addChild(iv);
}
Ejemplo n.º 9
0
void ImageView::copySpecialProperties(Widget *widget)
{
    ImageView* imageView = dynamic_cast<ImageView*>(widget);
    if (imageView)
    {
        _prevIgnoreSize = imageView->_prevIgnoreSize;
        setScale9Enabled(imageView->_scale9Enabled);
        loadTexture(imageView->_textureFile.c_str(), imageView->_imageTexType);
        setCapInsets(imageView->_capInsets);
    }
}
Ejemplo n.º 10
0
void UIImageView::copySpecialProperties(UIWidget *widget)
{
    UIImageView* imageView = dynamic_cast<UIImageView*>(widget);
    if (imageView)
    {
        m_bPrevIgnoreSize = imageView->m_bPrevIgnoreSize;
        setScale9Enabled(imageView->m_bScale9Enabled);
        loadTexture(imageView->m_strTextureFile.c_str(), imageView->m_eImageTexType);
        setCapInsets(imageView->m_capInsets);
    }
}
Ejemplo n.º 11
0
bool HelloWorld::init()
{
	if (!Layer::init())
	{
		return false;
	}
	m_score = 0;

	Size visibleSize = Director::getInstance()->getVisibleSize();


	//退出程序
	auto listenerEnd = EventListenerKeyboard::create();
	listenerEnd->onKeyReleased = CC_CALLBACK_2(HelloWorld::onKeyReleased, this);
	Director::getInstance()->getEventDispatcher()->addEventListenerWithSceneGraphPriority(listenerEnd, this);


	auto layerColorBG = LayerColor::create(Color4B(180, 170, 160, 255));
	addChild(layerColorBG);

	auto labTTFCardNumberName = Label::createWithSystemFont("Score", "fonts/arial.ttf", 60);
	labTTFCardNumberName->setPosition(Point(visibleSize.width / 5, visibleSize.height - 70));
	addChild(labTTFCardNumberName);

	labTTFCardNumber = Label::createWithSystemFont("0", "fonts/arial.ttf", 60);
	labTTFCardNumber->setPosition(Point(visibleSize.width / 2 + 100, visibleSize.height - 70));
	addChild(labTTFCardNumber);


	auto listen = EventListenerTouchOneByOne::create();
	listen->onTouchBegan = CC_CALLBACK_2(HelloWorld::onTouchBegan, this);
	listen->onTouchEnded = CC_CALLBACK_2(HelloWorld::onTouchEnded, this);
	Director::getInstance()->getEventDispatcher()->addEventListenerWithSceneGraphPriority(listen, this);

	//设置重来按钮
	auto m_bunt = ui::Button::create("normal.png", "selected.png");
	m_bunt->setScale9Enabled(true);//可拉伸图片
	m_bunt->setTitleText("Begen");
	m_bunt->setTitleFontSize(50);
	m_bunt->setTitleFontName("fonts/arial.ttf");
	m_bunt->setContentSize(cocos2d::Size(visibleSize.width / 10+200, visibleSize.height / 15));
	m_bunt->setPosition(Point(visibleSize.width / 5 + 180, visibleSize.height - 150));
	m_bunt->addTouchEventListener(CC_CALLBACK_2(HelloWorld::touchEvent, this));
	addChild(m_bunt);


	creatCard(visibleSize);

	autoCreateCardNumber();
	autoCreateCardNumber();

	return true;
}
Ejemplo n.º 12
0
Button* OptionScene::createButton(std::string text, Size size, std::function<void(Ref*)> callback)
{
	auto button = Button::create("UI/ButtonNormal.png", "UI/ButtonSelected.png");
	button->setTitleText(text);
	button->setTitleFontName(MyCreator::normalFont);
	button->setTitleColor(Color3B::BLACK);
	button->setTitleFontSize(30);
	button->addClickEventListener(callback);
	button->setScale9Enabled(true);
	button->setContentSize(size);
	return button;
}
Ejemplo n.º 13
0
void LoadingBar::copySpecialProperties(Widget *widget)
{
    LoadingBar* loadingBar = dynamic_cast<LoadingBar*>(widget);
    if (loadingBar)
    {
        _prevIgnoreSize = loadingBar->_prevIgnoreSize;
        setScale9Enabled(loadingBar->_scale9Enabled);
        loadTexture(loadingBar->_textureFile.c_str(), loadingBar->_renderBarTexType);
        setCapInsets(loadingBar->_capInsets);
        setPercent(loadingBar->_percent);
    }
}
Ejemplo n.º 14
0
void UILoadingBar::copySpecialProperties(UIWidget *widget)
{
    UILoadingBar* loadingBar = dynamic_cast<UILoadingBar*>(widget);
    if (loadingBar)
    {
        m_bPrevIgnoreSize = loadingBar->m_bPrevIgnoreSize;
        setScale9Enabled(loadingBar->m_bScale9Enabled);
        loadTexture(loadingBar->m_strTextureFile.c_str(), loadingBar->m_eRenderBarTexType);
        setCapInsets(loadingBar->m_capInsets);
        setPercent(loadingBar->m_nPercent);
    }
}
Ejemplo n.º 15
0
bool CButton::initWithFile(const char* pNormal, const char* pSelected, const char* pDisabled)
{
	if( !pNormal || !strlen(pNormal) || !init() )
	{
		return false;
	}

	setScale9Enabled(false);
	setNormalImage(pNormal);
	setSelectedImage(pSelected);
	setDisabledImage(pDisabled);

	return true;
}
Ejemplo n.º 16
0
ButtonEx* ButtonEx::create(const std::string& normalImage,
                           const std::string& selectedImage,
                           const std::string& disableImage,
                           TextureResType texType) {
    auto result = new (std::nothrow) Self();
    if (result != nullptr &&
        result->init(normalImage, selectedImage, disableImage, texType)) {
        result->autorelease();
        result->setScale9Enabled(true);
    } else {
        CC_SAFE_DELETE(result);
    }
    return result;
}
Ejemplo n.º 17
0
// on "init" you need to initialize your instance
bool HelloWorld::init()
{
    if ( !LayerColor::initWithColor(Constants::BACKGROUND_COLOR) )
    {
        return false;
    }
    
    Size visibleSize = Director::getInstance()->getVisibleSize();
    Vec2 origin = Director::getInstance()->getVisibleOrigin();

    auto learnBtn = ui::Button::create("BtnNormal", "BtnPressed", "", ui::Widget::TextureResType::PLIST);
    learnBtn->setScale9Enabled(true);
    learnBtn->setCapInsets(Rect(12, 12, 12, 12));
    learnBtn->setSize(Size(177, 58));
    learnBtn->setPosition(Vec2(origin.x + visibleSize.width/2, origin.y + visibleSize.height/2 + 39));
    learnBtn->getTitleRenderer()->setBMFontFilePath(Constants::FONT_BOLD30);
    learnBtn->setTitleText("Learn");
    learnBtn->addTouchEventListener(CC_CALLBACK_2(HelloWorld::touchEvent, this));
    this->addChild(learnBtn, 1, 1);
    
    auto testBtn = ui::Button::create("BtnBlueNormal", "BtnBluePressed", "", ui::Widget::TextureResType::PLIST);
    testBtn->setScale9Enabled(true);
    testBtn->setCapInsets(Rect(12, 12, 12, 12));
    testBtn->setSize(Size(177, 58));
    testBtn->setPosition(Vec2(origin.x + visibleSize.width/2, origin.y + visibleSize.height/2 - 39));
    testBtn->getTitleRenderer()->setBMFontFilePath(Constants::FONT_BOLD30);
    testBtn->setTitleText("Test");
    testBtn->addTouchEventListener(CC_CALLBACK_2(HelloWorld::touchEvent, this));
    this->addChild(testBtn, 2, 2);
    
    auto rateBtn = ui::Button::create("RateBtn", "", "", ui::Widget::TextureResType::PLIST);
    rateBtn->setPosition(Vec2(origin.x + visibleSize.width/2, origin.y + 30));
    rateBtn->addTouchEventListener(CC_CALLBACK_2(HelloWorld::touchEvent, this));
    this->addChild(rateBtn, 3, 3);

    return true;
}
Ejemplo n.º 18
0
void ImageView::copySpecialProperties(Widget *widget)
{
    ImageView* imageView = dynamic_cast<ImageView*>(widget);
    if (imageView)
    {
        _prevIgnoreSize = imageView->_prevIgnoreSize;
        setScale9Enabled(imageView->_scale9Enabled);
        auto imageSprite = imageView->_imageRenderer->getSprite();
        if(nullptr != imageSprite)
        {
            loadTexture(imageSprite->getSpriteFrame());
        }
        setCapInsets(imageView->_capInsets);
    }
}
Ejemplo n.º 19
0
void Slider::copySpecialProperties(Widget *widget)
{
    Slider* slider = dynamic_cast<Slider*>(widget);
    if (slider)
    {
        _prevIgnoreSize = slider->_prevIgnoreSize;
        setScale9Enabled(slider->_scale9Enabled);
        loadBarTexture(slider->_textureFile.c_str(), slider->_barTexType);
        loadProgressBarTexture(slider->_progressBarTextureFile.c_str(), slider->_progressBarTexType);
        loadSlidBallTextureNormal(slider->_slidBallNormalTextureFile.c_str(), slider->_ballNTexType);
        loadSlidBallTexturePressed(slider->_slidBallPressedTextureFile.c_str(), slider->_ballPTexType);
        loadSlidBallTextureDisabled(slider->_slidBallDisabledTextureFile.c_str(), slider->_ballDTexType);
        setPercent(slider->getPercent());
    }
}
Ejemplo n.º 20
0
bool CButton::initWith9Sprite(const Size& tSize, const char* pNormal, const char* pSelected, const char* pDisabled)
{
	if( !pNormal || !strlen(pNormal) || !init() )
	{
		return false;
	}

	setScale9Enabled(true);
	setContentSize(tSize);
	setNormalImage(pNormal);
	setSelectedImage(pSelected);
	setDisabledImage(pDisabled);

	return true;
}
Ejemplo n.º 21
0
void UI::initLoadingBar(){
    auto visibleSize=cocos2d::Director::getInstance()->getVisibleSize();
    auto lb=LoadingBar::create("editBG.png");
    auto lb1=lb->getContentSize();
    log("%f,%f",lb1.width,lb1.height);
    lb->setScale9Enabled(true);
    lb->setContentSize(Size(300,300));
    lb->setPosition(visibleSize/2);
    lb->setDirection(LoadingBar::Direction::LEFT);
    lb->setPercent(30);
    addChild(lb,2,1);
    //调度器
    schedule(CC_CALLBACK_1(UI::LoadingBarUpdate,this),"LoadingBarUpdate");


}
Ejemplo n.º 22
0
void LoadingBar::copySpecialProperties(Widget *widget)
{
    LoadingBar* loadingBar = dynamic_cast<LoadingBar*>(widget);
    if (loadingBar)
    {
        _prevIgnoreSize = loadingBar->_prevIgnoreSize;
        setScale9Enabled(loadingBar->_scale9Enabled);
        auto barSprite = loadingBar->_barRenderer->getSprite();
        if(nullptr != barSprite)
        {
            loadTexture(barSprite->getSpriteFrame());
        }
        setCapInsets(loadingBar->_capInsets);
        setPercent(loadingBar->_percent);
        setDirection(loadingBar->_direction);
    }
}
Ejemplo n.º 23
0
void Button::copySpecialProperties(Widget *widget)
{
    Button* button = dynamic_cast<Button*>(widget);
    if (button)
    {
        _prevIgnoreSize = button->_prevIgnoreSize;
        setScale9Enabled(button->_scale9Enabled);

        // clone the inner sprite: https://github.com/cocos2d/cocos2d-x/issues/16924
        button->_buttonNormalRenderer->copyTo(_buttonNormalRenderer);
        _normalFileName = button->_normalFileName;
        _normalTextureSize = button->_normalTextureSize;
        _normalTexType = button->_normalTexType;
        _normalTextureLoaded = button->_normalTextureLoaded;
        setupNormalTexture(!_normalFileName.empty());

        button->_buttonClickedRenderer->copyTo(_buttonClickedRenderer);
        _clickedFileName = button->_clickedFileName;
        _pressedTextureSize = button->_pressedTextureSize;
        _pressedTexType = button->_pressedTexType;
        _pressedTextureLoaded = button->_pressedTextureLoaded;
        setupPressedTexture(!_clickedFileName.empty());

        button->_buttonDisabledRenderer->copyTo(_buttonDisabledRenderer);
        _disabledFileName = button->_disabledFileName;
        _disabledTextureSize = button->_disabledTextureSize;
        _disabledTexType = button->_disabledTexType;
        _disabledTextureLoaded = button->_disabledTextureLoaded;
        setupDisabledTexture(!_disabledFileName.empty());

        setCapInsetsNormalRenderer(button->_capInsetsNormal);
        setCapInsetsPressedRenderer(button->_capInsetsPressed);
        setCapInsetsDisabledRenderer(button->_capInsetsDisabled);
        if(nullptr != button->getTitleRenderer())
        {
            setTitleText(button->getTitleText());
            setTitleFontName(button->getTitleFontName());
            setTitleFontSize(button->getTitleFontSize());
            setTitleColor(button->getTitleColor());
        }
        setPressedActionEnabled(button->_pressedActionEnabled);
        setZoomScale(button->_zoomScale);
    }

}
Ejemplo n.º 24
0
void Button::copySpecialProperties(Widget *widget)
{
    Button* button = dynamic_cast<Button*>(widget);
    if (button)
    {   
        _prevIgnoreSize = button->_prevIgnoreSize;
        setScale9Enabled(button->_scale9Enabled);
        loadTextureNormal(button->_normalFileName.c_str(), button->_normalTexType);
        loadTexturePressed(button->_clickedFileName.c_str(), button->_pressedTexType);
        loadTextureDisabled(button->_disabledFileName.c_str(), button->_disabledTexType);
        setCapInsetsNormalRenderer(button->_capInsetsNormal);
        setCapInsetsPressedRenderer(button->_capInsetsPressed);
        setCapInsetsDisabledRenderer(button->_capInsetsDisabled);
        setTitleText(button->getTitleText());
        setTitleFontName(button->getTitleFontName());
        setTitleFontSize(button->getTitleFontSize());
        setTitleColor(button->getTitleColor());
        setPressedActionEnabled(button->_pressedActionEnabled);
    }
}
Ejemplo n.º 25
0
void LoadingBar::copySpecialProperties(Widget *widget)
{
    LoadingBar* loadingBar = dynamic_cast<LoadingBar*>(widget);
    if (loadingBar)
    {
        _prevIgnoreSize = loadingBar->_prevIgnoreSize;
        setScale9Enabled(loadingBar->_scale9Enabled);

        // clone the inner sprite: https://github.com/cocos2d/cocos2d-x/issues/16930
        loadingBar->_barRenderer->copyTo(_barRenderer);
        setupTexture();

        setCapInsets(loadingBar->_capInsets);
        setPercent(loadingBar->_percent);
        setDirection(loadingBar->_direction);
        _textureFile = loadingBar->_textureFile;
        _totalLength = loadingBar->_totalLength;
        _barRendererTextureSize = loadingBar->_barRendererTextureSize;
    }
}
Ejemplo n.º 26
0
//按钮
void UI:: initButton(){
    auto visibleSize=Director::getInstance()->getVisibleSize();
    auto ub=Button::create();
    ub->loadTextureNormal("0.png");
    ub->loadTexturePressed("2.png");
    ub->loadTextureDisabled("2.png");
    ub->setScale9Enabled(true);
    ub->setContentSize(cocos2d::Size(128,128));
    ub->setPressedActionEnabled(true);
    ub->setZoomScale(2);
    ub->setTitleFontName("fonts/Marker Felt.ttf");
    ub->setTitleFontSize(30);
    ub->setTitleColor(cocos2d::Color3B::YELLOW);
    ub->setTitleText("HHLLO Button");
   // ub->addClickEventListener(CC_CALLBACK_1(UI::buttonClick, this));
    //添加触摸事件
    ub->addTouchEventListener (this,toucheventselector(UI::buttonClick));
    ub->setPosition(visibleSize/2);
    addChild(ub);
    
}
Ejemplo n.º 27
0
void UI::initListView(){
    auto lv=ListView::create();
    lv->setContentSize(cocos2d::Size(640,480));
    lv->setItemsMargin(20);//设置间隔
    lv->setDirection(cocos2d::ui::ScrollView::Direction::VERTICAL);
        for (int i=0; i<50; i++) {
        auto ub=Button::create();
        ub->loadTextureNormal("0.png");
        ub->loadTexturePressed("1.png");
        ub->loadTextureDisabled("0.png");
        ub->setScale9Enabled(true);
        ub->setContentSize(Size(600,400));
        ub->setPressedActionEnabled(true);
        ub->setZoomScale(0.5f);
        ub->addClickEventListener(CC_CALLBACK_1(UI::buttonClick, this));
        ub->setTag(i);
        lv->pushBackCustomItem(ub);
    }
   
    lv->addEventListener(CC_CALLBACK_2(UI::ListViewCall, this));
    addChild(lv);

}
Ejemplo n.º 28
0
void Button::copySpecialProperties(Widget *widget)
{
    Button* button = dynamic_cast<Button*>(widget);
    if (button)
    {
        _prevIgnoreSize = button->_prevIgnoreSize;
        setScale9Enabled(button->_scale9Enabled);
        auto normalSprite = button->_buttonNormalRenderer->getSprite();
        if (nullptr != normalSprite)
        {
            loadTextureNormal(normalSprite->getSpriteFrame());
        }
        auto clickedSprite = button->_buttonClickedRenderer->getSprite();
        if (nullptr != clickedSprite)
        {
            loadTexturePressed(clickedSprite->getSpriteFrame());
        }
        auto disabledSprite = button->_buttonDisableRenderer->getSprite();
        if (nullptr != disabledSprite)
        {
            loadTextureDisabled(disabledSprite->getSpriteFrame());
        }
        setCapInsetsNormalRenderer(button->_capInsetsNormal);
        setCapInsetsPressedRenderer(button->_capInsetsPressed);
        setCapInsetsDisabledRenderer(button->_capInsetsDisabled);
        if(nullptr != button->getTitleRenderer())
        {
            setTitleText(button->getTitleText());
            setTitleFontName(button->getTitleFontName());
            setTitleFontSize(button->getTitleFontSize());
            setTitleColor(button->getTitleColor());
        }
        setPressedActionEnabled(button->_pressedActionEnabled);
        setZoomScale(button->_zoomScale);
    }

}
Ejemplo n.º 29
0
// on "init" you need to initialize your instance
bool LearnScene::init()
{
    if ( !LayerColor::initWithColor(Constants::BACKGROUND_COLOR) )
    {
        return false;
    }
    
    Size visibleSize = Director::getInstance()->getVisibleSize();
    Vec2 origin = Director::getInstance()->getVisibleOrigin();
    
    // Home btn
    auto btn = ui::Button::create("HomeBtn", "HomeBtn", "", ui::Widget::TextureResType::PLIST);
    btn->setAnchorPoint(Vec2::ANCHOR_TOP_RIGHT);
    btn->setPosition(Vec2(origin.x + visibleSize.width, origin.y + visibleSize.height));
    btn->addTouchEventListener(CC_CALLBACK_2(LearnScene::touchEvent, this));
    this->addChild(btn, 1, 1);
    
    // Learn progress txt
    float retainedPercent = round(Constants::getRetainedWordCount() * 100 / Constants::getTotalWordCount());
    std::stringstream stm;
    stm << "Learning progress: " << retainedPercent << "%";
    auto label = Label::createWithBMFont(Constants::FONT_BOLD12, stm.str());
    label->setColor(Color3B::BLACK);
    label->setAnchorPoint(Vec2::ANCHOR_MIDDLE_LEFT);
    label->setPosition(origin.x + 14, origin.y + visibleSize.height - 28);
    this->addChild(label, 2, 2);
    
    // Learn progress bar
    auto sprite9 = ui::Scale9Sprite::createWithSpriteFrameName("PbBg", Rect(2, 2, 2, 2));
    sprite9->setContentSize(Size(visibleSize.width - 28, 18));
    sprite9->setPosition(Vec2(origin.x + visibleSize.width/2, origin.y + visibleSize.height - 60));
    this->addChild(sprite9, 3, 3);
    
    auto pb = ui::Scale9Sprite::createWithSpriteFrameName("PbProgress", Rect(2, 2, 2, 2));
    Size pbSize = sprite9->getContentSize();
    pbSize.width *= retainedPercent / 100;
    if(pbSize.width < 6) pbSize.width = 6;
    pb->setContentSize(pbSize);
    pb->setAnchorPoint(Vec2::ANCHOR_BOTTOM_LEFT);
    sprite9->addChild(pb, 1, 1);
    
    // Text area
    sprite9 = ui::Scale9Sprite::createWithSpriteFrameName("TextArea", Rect(12, 12, 12, 12));
    sprite9->setContentSize(Size(visibleSize.width-28, visibleSize.height - 264));
    sprite9->setPosition(Vec2(origin.x + visibleSize.width/2, origin.y + visibleSize.height - 86 - sprite9->getContentSize().height / 2));
    this->addChild(sprite9, 4, 4);
    
    // choices
    btn = ui::Button::create("ChoiceBg", "ChoiceSelectedBg", "", ui::Widget::TextureResType::PLIST);
    btn->setScale9Enabled(true);
    btn->setCapInsets(Rect(5, 5, 5, 5));
    btn->setSize(Size(visibleSize.width-28, 30));
    btn->setPosition(Vec2(origin.x + visibleSize.width/2, origin.y + 148));
    btn->getTitleRenderer()->setBMFontFilePath(Constants::FONT_REGULAR12);
    btn->getTitleRenderer()->setColor(Color3B::BLACK);
    btn->setTitleText("I know this word.");
    btn->addTouchEventListener(CC_CALLBACK_2(LearnScene::touchEvent, this));
    this->addChild(btn, 5, 5);
    btn = ui::Button::create("ChoiceBg", "ChoiceSelectedBg", "", ui::Widget::TextureResType::PLIST);
    btn->setScale9Enabled(true);
    btn->setCapInsets(Rect(5, 5, 5, 5));
    btn->setSize(Size(visibleSize.width-28, 30));
    btn->setPosition(Vec2(origin.x + visibleSize.width/2, origin.y + 103));
    btn->getTitleRenderer()->setBMFontFilePath(Constants::FONT_REGULAR12);
    btn->getTitleRenderer()->setColor(Color3B::BLACK);
    btn->setTitleText("Not yet!");
    btn->addTouchEventListener(CC_CALLBACK_2(LearnScene::touchEvent, this));
    this->addChild(btn, 6, 6);
    
    // check btn
    btn = ui::Button::create("BtnNormal", "BtnPressed", "BtnDisabled", ui::Widget::TextureResType::PLIST);
    btn->setScale9Enabled(true);
    btn->setCapInsets(Rect(12, 12, 12, 12));
    btn->setSize(Size(visibleSize.width-28, 58));
    btn->setPosition(Vec2(origin.x + visibleSize.width/2, origin.y + 45));
    btn->getTitleRenderer()->setBMFontFilePath(Constants::FONT_BOLD30);
    btn->setTitleText("Check");
    btn->addTouchEventListener(CC_CALLBACK_2(LearnScene::touchEvent, this));
    this->addChild(btn, 7, 7);
    btn->setEnabled(false);
    btn->setBright(false);
    
    // term
    std::string nextWord = Constants::getNextWordToLearn();
    label = Label::createWithBMFont(Constants::FONT_BOLD30, nextWord);
    label->setColor(Color3B::BLACK);
    label->setPosition(sprite9->getContentSize().width/2, sprite9->getContentSize().height/2);
    sprite9->addChild(label, 1, 1);
    
    // definition
    const ValueMap& wInfo = Configuration::getInstance()->getValue("words").asValueMap().at(nextWord).asValueMap();
    auto it = wInfo.find("ldef");
    std::string ldef = it != wInfo.end() ? it->second.asString() : "Missing definition";
    label = Label::createWithBMFont(Constants::FONT_REGULAR14, ldef);
    label->setColor(Color3B::BLACK);
    label->setWidth(sprite9->getContentSize().width - 28);
    label->setAlignment(TextHAlignment::LEFT);
    label->setPosition(sprite9->getContentSize().width/2, sprite9->getContentSize().height/2);
    sprite9->addChild(label, 2, 2);
    label->setOpacity(0);
    label->setVisible(false);
    
    // play sound
    Constants::playText(nextWord);
    
    // init vars
    this->startTime = time(0);
    this->showNext = false;
    this->answerChoice = -1;
    
    return true;
}
Ejemplo n.º 30
0
// on "init" you need to initialize your instance
bool PageTest::init()
{
    //////////////////////////////
    // 1. super init first
    if ( !Layer::init() )
    {
        return false;
    }
    
    scheduleUpdate();
    
    percent = 0;
    
    Size visibleSize = Director::getInstance()->getVisibleSize();
    Vec2 origin = Director::getInstance()->getVisibleOrigin();
    
    
    auto loadingBar = ui::LoadingBar::create("sliderProgress.png");
    loadingBar->setTag(0);
    loadingBar->setPosition(Vec2(visibleSize.width/2, visibleSize.height/2));
    loadingBar->setPercent(percent);
    this->addChild(loadingBar);
    
    
    
    
    auto checkBox = ui::CheckBox::create("check_box_normal.png", "check_box_normal_press.png", "check_box_active.png", "check_box_normal_disable.png", "check_box_active_disable.png");
    checkBox->setPosition(Vec2(visibleSize.width / 2.0f, visibleSize.height - 100));
    checkBox->addEventListener(CC_CALLBACK_2(PageTest::selectedEvent, this));
    this->addChild(checkBox);
    
    
    auto slider = ui::Slider::create();
    slider->loadBarTexture("sliderTrack.png");
    slider->loadSlidBallTextures("sliderThumb.png", "sliderThumb.png", "");
    slider->loadProgressBarTexture("sliderProgress.png");
    slider->setPosition(Vec2(visibleSize.width / 2.0f, visibleSize.height - 200));
    slider->addEventListener(CC_CALLBACK_2(PageTest::sliderEvent, this));
    this->addChild(slider);
    
    

    
    // auto recustom = ui::RichElementCustomNode::create(1, Color3B::WHITE, 255, pAr);
    // richText->pushBackElement(recustom);
    
    
    // androidだとバックグランドが緑がデフォ?
    // androidだと盤面全体が背景白になる
    // http://discuss.cocos2d-x.org/t/ui-pageview-bug-with-v3-rc1-green-background-on-android/12897
    //
    auto layout = ui::Layout::create();
    layout->setSize(Size(visibleSize.width, 200.0f));
    layout->setPosition(Vec2::ZERO);
    layout->setBackGroundColorType(ui::Layout::BackGroundColorType::SOLID);
    layout->setBackGroundColor(Color3B::BLUE);
    this->addChild(layout);
    
    auto pageView = ui::PageView::create();
    /*
    pageView->setBackGroundColorType(ui::Layout::BackGroundColorType::SOLID);
    pageView->setBackGroundColor(Color3B::RED);
    */
    pageView->setSize(Size(visibleSize.width, 130.0f));
    pageView->setPosition(Vec2::ZERO);
    pageView->setContentSize(Size(visibleSize.width, 130.0f));
    
    for (int i = 0; i < 3; ++i) {
        auto layout = ui::Layout::create();
        layout->setBackGroundImage("");
        layout->setBackGroundColor(Color3B::YELLOW);
        layout->setBackGroundColorType(ui::Layout::BackGroundColorType::SOLID);
        layout->setSize(Size(240.0f, 130.0f));
        // layout->addTouchEventListener(<#ccWidgetTouchCallback callback#>)

        
        auto imageView = ui::ImageView::create("HelloWorld.png");
        imageView->setScale9Enabled(true);
        imageView->setSize(Size(240, 130));
        imageView->setPosition(Vec2(layout->getSize().width / 2.0f, layout->getSize().height / 2.0f));
        layout->addChild(imageView);
        
        auto label = ui::Text::create(StringUtils::format("page %d",(i+1)), "Arial", 30);
        label->setColor(Color3B(192, 192, 192));
        label->setPosition(Vec2(layout->getSize().width / 2.0f, layout->getSize().height / 2.0f));
        layout->addChild(label);
        
        auto btn = ui::Button::create("");
        btn->setTitleText("");
        btn->setTitleFontSize(12);
        btn->setTitleFontName("");

        
        
        pageView->addPage(layout);
    }
    // pageView->scrollToPage(2);  // うまくいかない。handleReleaseLogicのboundaryのためだと思われる
    pageView->addEventListener(CC_CALLBACK_2(PageTest::pageViewEvent, this));
    
    
    layout->addChild(pageView);
    
    
    auto richText = ui::RichText::create();
    richText->ignoreContentAdaptWithSize(false);
    richText->setSize(Size(100, 100));
    richText->setPosition(Vec2(visibleSize.width / 2.0f, visibleSize.height - 300));
    this->addChild(richText);
    
    auto re1 = ui::RichElementText::create(1, Color3B::WHITE, 255, "This color is white. ", "Arial", 10);
    richText->pushBackElement(re1);
    
    auto re2 = ui::RichElementText::create(2, Color3B::YELLOW, 255, "This color is yellow. ", "Arial", 24);
    richText->insertElement(re2, 1);
    
    auto reimg = ui::RichElementImage::create(6, Color3B::WHITE, 255, "sliderballnormal.png");
    richText->pushBackElement(reimg);

    
    return true;
}