Пример #1
0
void SQT::showEvent(QShowEvent* qs) {
	QWidget::showEvent(qs);
	if (!initialized) {
		#ifdef Q_WS_X11
			XFlush(QX11Info::display());
		#endif

		create();
		initialized = true;
	}
	refreshOnce();
}
Пример #2
0
void SQT::resizeEvent(QResizeEvent* qr) {
	QWidget::resizeEvent(qr);
	refreshOnce();
}
Пример #3
0
void SQT::moveEvent(QMoveEvent* qm) {
	QWidget::moveEvent(qm);
	refreshOnce();
}
void TerritoryResourceDetailView::update(float sec) {
    if (m_isInUpdate) {
        return;
    }
    if(SceneController::getInstance()->currentSceneId != SCENE_ID_WORLD){
        return;
    }
    if(!WorldController::getInstance()->isInWorld){
        return;
    }
    if(!this->getParent()){
        return;
    }

    if (WorldController::getInstance()->forceUpdateTerritoryInfo == true) {
        refreshOnce();
        WorldController::getInstance()->forceUpdateTerritoryInfo = false;
    }
    
    double now = GlobalData::shared()->getTimeStamp();
    //设置联盟建筑当前城防值
    switch (m_territoryStat) {
        case 0: {
            double timePass = now - m_cityInfo.m_superMineInfo.trstime;
            double defTemp = m_cityInfo.m_superMineInfo.buildSpeed * timePass;
            auto currentDef = m_cityInfo.m_superMineInfo.trdef + defTemp;
            if (currentDef>=m_cityInfo.m_superMineInfo.trdefmax) {
                currentDef = m_cityInfo.m_superMineInfo.trdefmax;
            }
            std::string strDef = CC_ITOA(currentDef);
            strDef.append("/");
            strDef.append(CC_ITOA(m_cityInfo.m_superMineInfo.trdefmax));
            m_defLabel2->setString(strDef);
            std::string timeStr = _lang("115305");
            timeStr.append(": ");
            m_timeLabel1->setString(timeStr);
            double timeLeft = m_cityInfo.m_superMineInfo.trutime - now;
            timeLeft = MAX(0.0f, timeLeft);
            m_timeLabel2->setString(CC_SECTOA(timeLeft));
        }
            break;
        case 6: {
            auto time = now - m_digStartTime;
            int currentNum = m_digSpeed * time;
            if(m_changeCollectSpdTime != 0){
                time = now - m_changeCollectSpdTime;
                currentNum = m_digStartNum + m_digSpeed * time;
            }
            currentNum = MAX(0.0f, currentNum);
            currentNum = MIN(m_troopMax, currentNum);
            m_troopLabel2->setString(CC_CMDITOA(currentNum));
            double timePass = now - m_cityInfo.m_superMineInfo.digStartTime;
            double resTemp = m_cityInfo.m_superMineInfo.digSpeed * timePass;
            double resLeft = m_cityInfo.m_superMineInfo.sum - resTemp;
            resLeft = MAX(0.0f, resLeft);
            m_defLabel2->setString(CC_CMDITOA(double(resLeft)).c_str());
        }
            break;
        default:
            break;
    }
}