void MainWindow::onPOCInfoChanged(GitlUpdateUIEvt& rcEvt) { static int iTotalFrameNum = -1; static int iCurrentFrameNum = -1; QVariant vValue; /// frame number if( rcEvt.hasParameter("total_frame_num") ) { vValue = rcEvt.getParameter("total_frame_num"); iTotalFrameNum = vValue.toInt(); ui->totalFrameNum->setText(QString("%1").arg(iTotalFrameNum)); } /// total frame number if( rcEvt.hasParameter("current_frame_poc") ) { vValue = rcEvt.getParameter("current_frame_poc"); iCurrentFrameNum = vValue.toInt() + 1; ui->currentFrameNum->setText(QString("%1").arg(iCurrentFrameNum)); } /// slide bar position int iMin = ui->progressBar->minimum(); int iMax = ui->progressBar->maximum(); int iPos = 0; if(iTotalFrameNum != 1) { iPos = (iCurrentFrameNum-1)*(iMax-iMin)/(iTotalFrameNum-1); } ui->progressBar->setValue(iPos); }
void MessageViewer::onUIUpdate(GitlUpdateUIEvt &rcEvt) { /// <message level -- switch> table static MessageSwitchItem s_messageSwith[] = { {QtDebugMsg, ui->debugCheckBox }, {QtWarningMsg, ui->warningCheckBox }, {QtCriticalMsg, ui->critiCheckBox }, {QtFatalMsg, ui->fatalCheckBox }, {QtMsgType(-1), NULL} /// end mark }; if( rcEvt.hasParameter("msg_detail")) { QVariant vValue = rcEvt.getParameter("msg_detail"); QString strMsg = vValue.toString(); QtMsgType eMsgLevel = (QtMsgType)rcEvt.getParameter("msg_level").toInt(); /// different message, different color if(eMsgLevel != QtDebugMsg) ui->msgTextBrowser->setTextColor(QColor(Qt::red)); else ui->msgTextBrowser->setTextColor(m_cDefalutTextColor); /// check if the message type is allow MessageSwitchItem *pcItem = s_messageSwith; bool bIsAllowed = false; do { if(pcItem->eMsgType == eMsgLevel && pcItem->pcSwitch->isChecked()) { bIsAllowed = true; break; } pcItem++; }while(pcItem->pcSwitch != NULL); if(bIsAllowed) { /// display message ui->msgTextBrowser->append(strMsg); /// severe message should prompt dialog if( eMsgLevel >= QtCriticalMsg ) { m_cWarningBox.setText(strMsg); m_cWarningBox.show(); } } } }