void LoginRegDialog::finished() { //init bg CCSize dialogSize = CCSizeMake(m_anchorWidth,m_anchorHeight); UiThemeDef *uiDef = UiThemeMgrProxy::getInstance()->getThemeByName(m_theme); BasSkin *skin = BorderImageSkin::create(dialogSize,uiDef,m_bg); if(skin) setSkin(skin); LangDef *lang = UiThemeMgrProxy::getInstance()->getThemeMgr()->getLangDef(); if(1){ // title m_loginTitleWidget = new BasButton; m_loginTitleWidget->setCanTouch(false); m_loginTitleWidget->setButtonInfo("","fonts/uifont35.fnt",m_theme,m_titleBg); m_loginTitleWidget->setHorizontal("parent",0.5); m_loginTitleWidget->setTop("parent",uilib::Top); m_loginTitleWidget->setMaxHeightRefSize("parent",0.15); m_loginTitleWidget->setTopMargin(m_edgeSize); m_regTitleWidget = new BasButton; m_regTitleWidget->setCanTouch(false); m_regTitleWidget->setButtonInfo("","fonts/uifont35.fnt",m_theme,m_titleBg); m_regTitleWidget->setHorizontal("parent",0.5); m_regTitleWidget->setTop("parent",uilib::Top); m_regTitleWidget->setMaxHeightRefSize("parent",0.15); m_regTitleWidget->setTopMargin(m_edgeSize); } if(1){//buttons m_loginWidget = new BasWidget; HorizontalLayout *hlay; hlay = new HorizontalLayout; m_loginButton = new BasButton; m_loginButton->setCanTouch(true); m_loginButton->setButtonInfo(lang->getStringById(StringEnum::Login).data(),"fonts/uifont35.fnt",m_theme,m_loginImg,CCSizeMake(0,0),ccWHITE); m_loginButton->setButtonIndex(LoginButton); m_loginButton->setClickCB(this,callfuncND_selector(LoginRegDialog::onButtonClicked)); m_loginCancelButton = new BasButton; m_loginCancelButton->setCanTouch(true); m_loginCancelButton->setButtonInfo(lang->getStringById(StringEnum::Cancel).data(),"fonts/uifont35.fnt",m_theme,m_cancelImg,CCSizeMake(0,0),ccWHITE); m_loginCancelButton->setButtonIndex(LoginCancelButton); m_loginCancelButton->setClickCB(this,callfuncND_selector(LoginRegDialog::onButtonClicked)); m_loginRegButton = new BasButton; m_loginRegButton->setCanTouch(true); m_loginRegButton->setButtonInfo(lang->getStringById(StringEnum::Register).data(),"fonts/uifont35.fnt",m_theme,m_loginRegImg,CCSizeMake(0,0),ccWHITE); m_loginRegButton->setButtonIndex(LoginRegButton); m_loginRegButton->setClickCB(this,callfuncND_selector(LoginRegDialog::onButtonClicked)); hlay->addWidget(m_loginButton); hlay->addWidget(m_loginCancelButton); hlay->addWidget(m_loginRegButton); hlay->setAlignChildsSize(true); hlay->setAveraged(true); m_loginWidget->setLayout(hlay); m_loginWidget->setLeft("parent",uilib::Left); m_loginWidget->setRight("parent",uilib::Right); m_loginWidget->setBottom("parent",uilib::Bottom); m_loginWidget->setMaxHeightRefSize("parent",0.2); m_loginWidget->setBottomMargin(m_edgeSize); m_loginWidget->setLeftMargin(m_edgeSize); m_loginWidget->setRightMargin(m_edgeSize); m_regWidget = new BasWidget; hlay = new HorizontalLayout; m_regButton = new BasButton; m_regButton->setCanTouch(true); m_regButton->setButtonInfo(lang->getStringById(StringEnum::Register).data(),"fonts/uifont35.fnt",m_theme,m_regImg,CCSizeMake(0,0),ccWHITE); m_regButton->setButtonIndex(RegButton); m_regButton->setClickCB(this,callfuncND_selector(LoginRegDialog::onButtonClicked)); m_regBackButton = new BasButton; m_regBackButton->setCanTouch(true); m_regBackButton->setButtonInfo(lang->getStringById(StringEnum::Back).data(),"fonts/uifont35.fnt",m_theme,m_regBackImg,CCSizeMake(0,0),ccWHITE); m_regBackButton->setButtonIndex(RegBackButton); m_regBackButton->setClickCB(this,callfuncND_selector(LoginRegDialog::onButtonClicked)); hlay->addWidget(m_regButton); hlay->addWidget(m_regBackButton); hlay->setAlignChildsSize(true); hlay->setAveraged(true); m_regWidget->setLayout(hlay); m_regWidget->setLeft("parent",uilib::Left); m_regWidget->setRight("parent",uilib::Right); m_regWidget->setBottom("parent",uilib::Bottom); m_regWidget->setMaxHeightRefSize("parent",0.2); m_regWidget->setBottomMargin(m_edgeSize); m_regWidget->setLeftMargin(m_edgeSize); m_regWidget->setRightMargin(m_edgeSize); //actions BasNodeAction *moveIn = UiNodeActionFactory::getInstance()->getMoveActionByName("movein"); BasNodeAction *moveOut = UiNodeActionFactory::getInstance()->getMoveActionByName("moveout"); moveIn->setEaseType(uilib::EaseSineInOut); moveIn->setMoveInType(uilib::ScaleYIn); moveOut->setEaseType(uilib::EaseSineInOut); moveOut->setMoveOutType(uilib::ScaleYOut); moveOut->setActionTime(0.2); moveIn->setStartTime(0.2); m_loginWidget->setMoveinAction(moveIn); m_loginWidget->setMoveoutAction(moveOut); m_regWidget->setMoveinAction(moveIn); m_regWidget->setMoveoutAction(moveOut); } this->addChild(m_loginTitleWidget); this->addChild(m_regTitleWidget); this->addChild(m_loginWidget); this->addChild(m_regWidget); m_regWidget->setEnabled(false); m_regWidget->setVisible(false); m_regTitleWidget->setVisible(false); if(1){//content widget m_contentWidget = new BasWidget; m_contentWidget->setLeft("parent",uilib::Left); m_contentWidget->setRight("parent",uilib::Right); m_contentWidget->setLeftMargin(m_edgeSize); m_contentWidget->setRightMargin(m_edgeSize); m_contentWidget->setTopMargin(m_edgeSize / 4); m_contentWidget->setBottomMargin(m_edgeSize / 4); m_contentWidget->setTop(m_loginTitleWidget->getName(),uilib::Bottom); m_contentWidget->setBottom(m_loginWidget->getName(),uilib::Top); VerticalLayout *mainlay = new VerticalLayout; BasLabel *label1,*label2; label1 = new BasLabel; label1->setLabelInfo(lang->getStringById(StringEnum::Account).data(),"fonts/uifont35.fnt","default","",CCSizeMake(0,0),ccBLACK); label2 = new BasLabel; label2->setLabelInfo(lang->getStringById(StringEnum::Passwd).data(),"fonts/uifont35.fnt","default","",CCSizeMake(0,0),ccBLACK); m_accountBox = new InputBox; m_accountBox->setMaxLength(m_accountLimitLen); m_accountBox->setTheme("default","inputbg"); m_accountBox->setText(m_account); m_accountBox->setMinHeightRefSize("parent",0.25); m_passwdBox = new InputBox; m_passwdBox->setMaxLength(m_passwdLimitLen); m_passwdBox->setTheme("default","inputbg"); m_passwdBox->setText(m_passwd); m_passwdBox->setMinHeightRefSize("parent",0.25); m_passwdBox->setInputFlag(kEditBoxInputFlagPassword); mainlay->addWidget(label1); mainlay->addWidget(m_accountBox); mainlay->addWidget(label2); mainlay->addWidget(m_passwdBox); mainlay->setAlignChildsSize(false); mainlay->setAveraged(true); mainlay->setChildAlign(0,uilib::Left); mainlay->setChildAlign(2,uilib::Left); mainlay->setChildAlign(1,uilib::Left); mainlay->setChildAlign(1,uilib::Right); mainlay->setChildAlign(3,uilib::Left); mainlay->setChildAlign(3,uilib::Right); m_contentWidget->setLayout(mainlay); } this->addChild(m_contentWidget); }