void CursorTextField::initCursorSprite(int nHeight)
{
    int column = 4;
    int pixels[nHeight][column];
    for (int i=0; i<nHeight; ++i) {
        for (int j=0; j<column; ++j) {
            pixels[i][j] = 0xffffffff;
        }
    }
    
    CCTexture2D *texture = new CCTexture2D();
    texture->initWithData(pixels, kCCTexture2DPixelFormat_RGB888, 1, 1, CCSizeMake(column, nHeight));
    
    m_pCursorSprite = CCSprite::createWithTexture(texture);
    CCSize winSize = getContentSize();
    m_cursorPos = ccp(0, winSize.height / 2);
    m_pCursorSprite->setPosition(m_cursorPos);
    this->addChild(m_pCursorSprite);
    
    m_pCursorAction = CCRepeatForever::create((CCActionInterval *) CCSequence::create(CCFadeOut::create(0.25f), CCFadeIn::create(0.25f), NULL));
    
    m_pCursorSprite->runAction(m_pCursorAction);
    
    m_pInputText = new std::string();
}
Example #2
0
CCSprite* blankSpriteWithSize(const CCSize& size)
{
    CCSprite *sprite = new CCSprite();
    GLubyte  *buffer = (GLubyte*)malloc(sizeof(GLubyte)*4);
    for (int i=0; i<4; i++) {
        buffer[i]=255;
    }
    CCTexture2D *tex = new CCTexture2D();
    tex->initWithData(buffer, CCTexture2DPixelFormat::kCCTexture2DPixelFormat_RGB5A1,
                      1, 1, size);
    sprite->setTexture(tex);
    sprite->setTextureRect(CCRectMake(0, 0, size.width, size.height));
    free(buffer);
    return sprite;
}
Example #3
0
	void UITextInputField::CreateWhiteBack()
	{
		if(m_pWhiteBack != NULL)
		{
			m_pWhiteBack->removeFromParentAndCleanup(true);
			m_pWhiteBack = NULL;
		}

		if(m_pTextInputField == NULL)
		{
			return;
		}

		CCSize dimension = m_pTextInputField->getDimensions();
		int dimensionWidth = dimension.width;
		int dimensionHeight = dimension.height;

		if(dimensionWidth != 0 && dimensionHeight != 0)
		{
			int *pixels = new int[(dimensionWidth + 8) * (dimensionHeight + 8)];
			for (int i=0; i<dimensionWidth+8; ++i) {
				for (int j=0; j<dimensionHeight+8; ++j) {
					//pixels[i][j] = 0xffffffff;
					pixels[i*4+j] = 0xffffffff;
				}
			}

			CCTexture2D *texture = new CCTexture2D();
			texture->initWithData(pixels,
				kCCTexture2DPixelFormat_RGB888,
				1,
				1,
				CCSizeMake(dimensionWidth + 8, dimensionHeight + 8)
				);

			delete[] pixels;

			m_pWhiteBack = CCSprite::createWithTexture(texture);
			texture->release();
		}
	}
Example #4
0
bool CCTextInput::initWithLabel(const char* placeHolder, CCNode* label, CCSize designSize, int align, unsigned int limit)
{
	m_uAlign = align;
	m_pColor = dynamic_cast<CCRGBAProtocol*>(label);
	m_pLabelNode = label;
	m_pLabel = dynamic_cast<CCLabelProtocol*>(label);
    if (placeHolder!=NULL)
    {
        m_pPlaceHolder = (placeHolder) ? new std::string(placeHolder) : new std::string;
		m_pLabel->setString(placeHolder);
		m_pColor->setColor(m_ColorSpaceHolder);
    }
	this->setLimitNum(limit);

	int cursorHeight = (int)(designSize.height * 0.9);
	int* pixels = new int[2*cursorHeight];
	for (int i=0; i<cursorHeight; ++i) {
		for (int j=0; j<2; ++j) {
			 pixels[i*2+j] = 0x00000000;
		}
	}
	CCTexture2D *texture = new CCTexture2D();
	texture->initWithData(pixels, kCCTexture2DPixelFormat_RGB888, 1, 1, CCSizeMake(2, cursorHeight));
	delete[] pixels;
	m_pCursorSprite = CCSprite::createWithTexture(texture);
	m_pCursorSprite->setAnchorPoint(CCPointMake(0, 0.5));
	m_cursorPos = CCPointMake(0, designSize.height / 2);
	addChild(m_pCursorSprite, 1, 1);

	m_pCursorAction = CCRepeatForever::create((CCActionInterval *) CCSequence::create(CCFadeOut::create(0.25f), CCFadeIn::create(0.25f), NULL));
    m_pCursorSprite->runAction(m_pCursorAction);
	m_pCursorSprite->setVisible(false);

	// add view
	addChild(m_pLabelNode, 0, 0);
	setString(m_pLabel->getString());

	return true;
}
Example #5
0
	bool CCGridBase::initWithSize(ccGridSize gridSize)
	{
    	CCDirector *pDirector = CCDirector::sharedDirector();
		CGSize s = pDirector->getWinSizeInPixels();
		
		unsigned int POTWide = ccNextPOT((unsigned int)s.width);
		unsigned int POTHigh = ccNextPOT((unsigned int)s.height);

		// on mac, it use kCCTexture2DPixelFormat_RGBA8888
		CCTexture2DPixelFormat format = kCCTexture2DPixelFormat_RGBA8888;

		void *data = calloc((int)(POTWide * POTHigh * 4), 1);
		if (! data)
		{
			CCLOG("cocos2d: CCGrid: not enough memory.");
			this->release();
			return false;
		}

		CCTexture2D *pTexture = new CCTexture2D();
		pTexture->initWithData(data, format, POTWide, POTHigh, s);

		free(data);

		if (! pTexture)
		{
			CCLOG("cocos2d: CCGrid: error creating texture");
			delete this;
			return false;
		}

		initWithSize(gridSize, pTexture, false);

		pTexture->release();

		return true;
	}
Example #6
0
    void CTextField::initCursorSprite(int nHeight)
    {
        using namespace cocos2d;
        
        int column = 4;
        //  int pixels[nHeight][column];
		int (*pixels)[4] = new int[nHeight][4];
        
        for (int i = 0; i < nHeight; ++i)
        {
            for (int j = 0; j < column; ++j)
            {
                pixels[i][j] = 0xff696969;
            }
        }
        
        CCTexture2D * texture = new CCTexture2D();
        texture->initWithData(pixels, kCCTexture2DPixelFormat_RGB888, 1, 1, CCSizeMake(column, nHeight));
        
        m_pCursorSprite = CCSprite::createWithTexture(texture);
        CCSize parentSize = getContentSize();
        m_pCursorSprite->setPosition(ccp(0, parentSize.height / 2));
        addChild(m_pCursorSprite);
        
        /*
         CCFadeOut * fadeOut = CCFadeOut::create(0.25f);
         CCFadeIn * fadeIn = CCFadeIn::create(0.25f);
         CCSequence * seq = CCSequence::create(fadeOut, fadeIn, NULL);
         CCRepeatForever * forever = CCRepeatForever::create(seq);
         m_pCursorSprite->runAction(forever);
         */
        
        m_pCursorSprite->setVisible(false);
        
		delete []pixels;
		pixels = NULL;
    }
bool CCGridBase::initWithSize(const CCSize& gridSize)
{
    CCDirector *pDirector = CCDirector::sharedDirector();
    CCSize s = pDirector->getWinSizeInPixels();
    
    unsigned long POTWide = CCUtils::nextPOT((unsigned int)s.width);
    unsigned long POTHigh = CCUtils::nextPOT((unsigned int)s.height);

    // we only use rgba8888
    CCTexture2DPixelFormat format = kCCTexture2DPixelFormat_RGBA8888;

    void *data = calloc((int)(POTWide * POTHigh * 4), 1);
    if (! data)
    {
        CCLOG("cocos2d: CCGrid: not enough memory.");
        CC_SAFE_RELEASE(this);
        return false;
    }

    CCTexture2D *pTexture = new CCTexture2D();
    pTexture->initWithData(data, format, POTWide, POTHigh, s);

    free(data);

    if (! pTexture)
    {
        CCLOG("cocos2d: CCGrid: error creating texture");
        return false;
    }

    initWithSize(gridSize, pTexture, false);

    CC_SAFE_RELEASE(pTexture);

    return true;
}
Example #8
0
void SGCGMovieLayer::constructView()
{
    SGNotificationCenter::sharedNotificationCenter()->addObserver(MSG_CGBATTLE_START, this, callfuncO_selector(SGCGMovieLayer::cgBattleListener));
       s = CCDirector::sharedDirector()->getWinSize();
    
    ResourceManager::sharedInstance()->bindTexture("bg/cgBg.plist", RES_TYPE_LAYER_UI, sg_cgMovieLayer);

    CCSprite *cgBg = CCSprite::createWithSpriteFrameName("cgBg.png");
    cgBg->setAnchorPoint(ccp(0.5, 1));
    cgBg->ignoreAnchorPointForPosition(false);
    cgBg->cocos2d::CCNode::setScaleX(s.width/cgBg->getContentSize().width);
    cgBg->setPosition(ccp(s.width/2, s.height));
    addChild(cgBg);
    
//    SGButton *skipBt = SGButton::createFromLocal("box_btnbg.png", "跳 过", this, menu_selector(SGCGMovieLayer::cgSkipToBattle), CCPointZero, FONT_PANGWA,ccWHITE,32,false,true);
//    skipBt->setPosition(ccp(s.width/2, skipBt->getContentSize().height*2));
//    addBtn(skipBt);
    
    CCLayerColor * blackBg = CCLayerColor::create(ccc4(0, 0, 0, 255), s.width, s.height);
    blackBg->setTouchEnabled(false);
    blackBg->ignoreAnchorPointForPosition(false);
    blackBg->setAnchorPoint(ccp(0, 0));
    blackBg->setPosition(ccp(0, 0));
    this->addChild(blackBg, -100);
    
    scrollRect = CCRectMake(0, s.height*0.2, s.width, s.height/4);
    cgScrollView = SNSScrollView::create(scrollRect);
    cgScrollView->setFrame(scrollRect);
    cgScrollView->setPosition(scrollRect.origin);
    cgScrollView->setHorizontal(false);
    cgScrollView->setVertical(true);
    cgScrollView->setTouchEnabled(false);
    this->addChild(cgScrollView);
    
//    CCSprite *scrollBg = CCSprite::createWithSpriteFrameName("barrack_kuang.png");
//    scrollBg->cocos2d::CCNode::setScale(s.width/scrollBg->getContentSize().width, s.height/4/scrollBg->getContentSize().height);
//    scrollBg->setPosition(ccpAdd(scrollRect.origin, ccp(s.width/2, s.height/8)));
//    addChild(scrollBg);
    
    char *spritData = new char[(int)s.width * (int)s.height *4];
    memset(spritData,0,(int)s.width * (int)s.height *4);
    int spriteDataSize = (int)s.width * (int)s.height*4;
    for (int j=0; j<spriteDataSize; j+=4) {
        spritData[j] = 0;
        spritData[j+1] = 0;
        spritData[j+2] = 0;
        spritData[j+3] = 255;
    }
    
    CCTexture2D *pTexture = new CCTexture2D();
    pTexture->initWithData(spritData, kCCTexture2DPixelFormat_Default, (int)s.width, (int)s.height, s);
    
    finaleSprite = CCSprite::createWithTexture(pTexture);
    finaleSprite->setPosition(CCPointZero);
    finaleSprite->setAnchorPoint(CCPointZero);
    this->addChild(finaleSprite,10,10);
    finaleSprite->setVisible(false);
    finaleSprite->setOpacity(0);
    
    delete [] spritData;
    pTexture->autorelease();
    
    
    this->setTouchEnabled(true);
    
    const char *str[7] = { str_CGMovieLayer_str1,
                         str_CGMovieLayer_str2,
                        str_CGMovieLayer_str3,
                         str_CGMovieLayer_str4,
                        str_CGMovieLayer_str5,
                          str_CGMovieLayer_str6,
                         str_CGMovieLayer_str7};
    
    SGCCLabelTTF *cgMsg = NULL;
    posY =  -20;
    for (int i=0; i<7; i++) {
        cgMsg =  SGCCLabelTTF::create(str[i], FONT_BOXINFO, 34);
        cgMsg->cocos2d::CCNode::setPosition(s.width/2, posY);
        cgScrollView->m_body->addChild(cgMsg);
        posY -= 50;
    }
    moveCgMsgDis = CGMSGMOVEDIS;
    unschedule(schedule_selector(SGCGMovieLayer::moveCgMsgUp));
    if (SGPlayerInfo::sharePlayerInfo()->getCDKeyNeed()==1) {
        
        SGNotificationCenter::sharedNotificationCenter()->addObserver(MSG_CDK, this, callfuncO_selector(SGCGMovieLayer::cdkListener));
        
        ResourceManager::sharedInstance()->bindTexture("sgloginingbox/sgloginingbox.plist", RES_TYPE_LAYER_UI, sg_cgMovieLayer);
//         ResourceManager::sharedInstance()->bindTexture("sgserverlistlayer/sgserverlistlayer.plist",RES_TYPE_LAYER_UI ,sg_registerLayer);
        
        
        box = CCSprite::createWithSpriteFrameName("register_diban.png");
        box->setPosition(SGLayout::getPoint(kMiddleCenter));
        this->addChild(box);

        m_cdk = CCEditBox::create(CCSizeMake(500, 60), CCScale9Sprite::createWithSpriteFrameName("public_kuang_input.png"));
        m_cdk->setPlaceHolder(str_CGMovieLayer_str8);
        m_cdk->setPlaceholderFontColor(ccc3(0x82,0x3e,0x02));
        m_cdk->setMaxLength(10);
        m_cdk->setReturnType(kKeyboardReturnTypeDone);
        m_cdk->setInputMode(kEditBoxInputModeSingleLine);
        m_cdk->setPosition(ccp(box->getContentSize().width*.5,box->getContentSize().height*.48));
//        m_cdk->setDelegate(this);
        box->addChild(m_cdk);
   
        
        
        title = CCSprite::createWithSpriteFrameName("gameactive.png");
        title->setPosition(ccp(box->getContentSize().width*.5,box->getContentSize().height*.8));
        box->addChild(title);
        //确定
        btn = SGButton::create("box_btnbg.png", "public_font_queding.png", this, menu_selector(SGCGMovieLayer::btnclick),CCPointZero,false,true);
        this->addBtn(btn);
        btn->setPosition(ccpAdd(box->getPosition(),ccp(-140,-btn->getContentSize().height*2.5)));
        //取消
        btn2 = SGButton::create("box_btnbg.png", "public_font_quxiao.png", this, menu_selector(SGCGMovieLayer::btnclickcancel),CCPointZero,false,true);
        this->addBtn(btn2);
        btn2->setPosition(ccpAdd(box->getPosition(),ccp(140,-btn->getContentSize().height*2.5)));

        
    }
    else
    {
    schedule(schedule_selector(SGCGMovieLayer::moveCgMsgUp), CGMSGMOVEGAP);
    }
}