Ejemplo n.º 1
0
bool TextFieldTTF::initWithPlaceHolder(const std::string& placeholder, const std::string& fontName, float fontSize)
{
    _placeHolder = placeholder;

    do
    {
        // If fontName is ttf file and it corrected, use TTFConfig
        if (FileUtils::getInstance()->isFileExist(fontName))
        {
            TTFConfig ttfConfig(fontName, fontSize, GlyphCollection::DYNAMIC);
            if (setTTFConfig(ttfConfig))
            {
                break;
            }
        }

        setSystemFontName(fontName);
        setSystemFontSize(fontSize);

    } while (false);


    Label::setTextColor(_colorSpaceHolder);
    Label::setString(_placeHolder);

#if (CC_TARGET_PLATFORM == CC_PLATFORM_MAC || CC_TARGET_PLATFORM == CC_PLATFORM_WIN32 || CC_TARGET_PLATFORM == CC_PLATFORM_LINUX)
    // On desktop default enable cursor
    if (_currentLabelType == LabelType::TTF)
    {
        setCursorEnabled(true);
    }
#endif

    return true;
}
Ejemplo n.º 2
0
bool TextFieldTTF::initWithPlaceHolder(const std::string& placeholder, const std::string& fontName, float fontSize)
{
    _placeHolder = std::string(placeholder);
    setSystemFontName(fontName);
    setSystemFontSize(fontSize);
    Label::setTextColor(_colorSpaceHolder);
    Label::setString(_placeHolder);

    return true;
}
Ejemplo n.º 3
0
bool TextFieldTTF::initWithPlaceHolder(const std::string& placeholder, const Size& dimensions, TextHAlignment alignment, const std::string& fontName, float fontSize)
{
    _placeHolder = placeholder;
    setDimensions(dimensions.width,dimensions.height);
    setSystemFontName(fontName);
    setSystemFontSize(fontSize);
    setAlignment(alignment,TextVAlignment::CENTER);
    Label::setTextColor(_colorSpaceHolder);
    Label::setString(_placeHolder);

    return true;
}
Ejemplo n.º 4
0
Label* Label::createWithSystemFont(const std::string& text, const std::string& font, float fontSize, const Size& dimensions /* = Size::ZERO */, TextHAlignment hAlignment /* = TextHAlignment::LEFT */, TextVAlignment vAlignment /* = TextVAlignment::TOP */)
{
    auto ret = new (std::nothrow) Label(nullptr,hAlignment,vAlignment);

    if (ret)
    {
        ret->setSystemFontName(font);
        ret->setSystemFontSize(fontSize);
        ret->setDimensions(dimensions.width, dimensions.height);
        ret->setString(text);

        ret->autorelease();

        return ret;
    }

    delete ret;
    return nullptr;
}
// on "init" you need to initialize your instance
bool HelloWorld::init()
{
    //////////////////////////////
    // 1. super init first
    if ( !Layer::init() )
    {
        return false;
    }
    
    Size visibleSize = Director::getInstance()->getVisibleSize();
    Vec2 origin = Director::getInstance()->getVisibleOrigin();

    /////////////////////////////
    // 2. add a menu item with "X" image, which is clicked to quit the program
    //    you may modify it.

    // add a "close" icon to exit the progress. it's an autorelease object
    auto closeItem = MenuItemImage::create(
                                           "CloseNormal.png",
                                           "CloseSelected.png",
                                           CC_CALLBACK_1(HelloWorld::menuCloseCallback, this));
    
	closeItem->setPosition(Vec2(origin.x + visibleSize.width - closeItem->getContentSize().width/2 ,
                                origin.y + closeItem->getContentSize().height/2));

    // create menu, it's an autorelease object
    auto menu = Menu::create(closeItem, NULL);
    menu->setPosition(Vec2::ZERO);
    this->addChild(menu, 1);


    /////////////////////////////
    // 3. add your codes below...

    // add a label shows "Hello World"
    // create and initialize a label
    
    auto label = Label::create();
	label->setDimensions(400, 100);
	label->setLineBreakWithoutSpace(true);
	//label->setString("123456789012345678901234567890 123456789012345678901234567890 12345678901234567890");
	label->setSystemFontName("Arial");
	label->setSystemFontSize(24);
    
    // position the label on the center of the screen
    //label->setPosition(Vec2(origin.x + visibleSize.width/2,origin.y + visibleSize.height - label->getContentSize().height));
	label->setAnchorPoint(Vec2(0, 1));
	label->setPosition(Vec2(100,100));

    // add the label as a child to this layer
    this->addChild(label, 1);

	/*TintTest*/
	/*
    // add "HelloWorld" splash screen"
    auto sprite = Sprite::create("images/380.png");
    // position the sprite on the center of the screen
    sprite->setPosition(Vec2(visibleSize.width/2 + origin.x, visibleSize.height/2 + origin.y));
	sprite->setColor(Color3B(0, 255, 0));
    // add the sprite as a child to this layer
    this->addChild(sprite, 1);
	sprite->runAction(Sequence::createWithTwoActions(TintTo::create(3, 255, 255, 0), TintTo::create(3, 255, 0, 0)));*/

	/*
	MonsterHeadSprite *monster = MonsterHeadSprite::create("и╜ажа╜йС");
	monster->setPosition(Vec2(visibleSize.width / 2 + origin.x, visibleSize.height / 2 + origin.y));
	this->addChild(monster, 0);

	DigitSprite* digit = DigitSprite::create();
	digit->setPosition(Vec2(visibleSize.width / 2 + origin.x, visibleSize.height / 2 + origin.y));
	this->addChild(digit, 0);
	digit->showDigit(21);*/
	
	/*
	//dialogue layer test
	Node* stencil = Node::create();
	auto clip1 = LayerColor::create(Color4B::BLACK, 24, 24);
	clip1->setPosition(Vec2(100,76));
	stencil->addChild(clip1);

	ClippingNode* clippingNode = ClippingNode::create(stencil);
	clippingNode->addChild(sprite);
	addChild(clippingNode, 2);*/

	/*
	//CharacterLayer test
	CharacterLayer *clayer = CharacterLayer::create();
	addChild(clayer, 1, 1);*/

	/*choice menu layer
	auto layer = ChoiceLayer::create();
	layer->setAnchorPoint(Vec2(0.5, 0.5));
	layer->setPosition(Vec2(400, 300));
	addChild(layer, 2, 2);*/
	
	/*Read script file
	FileUtils::getInstance()->addSearchPath("scripts");
	if (!FileUtils::getInstance()->isFileExist("script.rpy")) {
		CCLOG("cannot find file: script.rpy.");
	}
	string s = FileUtils::getInstance()->getStringFromFile("script.rpy");
	size_t pos = s.find_first_of("\r\n");
	list<string> stmts = CommonUtils::splitString(s, "\r\n");
	label->setString(stmts.front());
*/

    return true;
}