void CBEChannelSelectWidget::paintHead() { // headBox cFrameTitle.iX = cFrameBox.iX; cFrameTitle.iY = cFrameBox.iY; cFrameTitle.iWidth = cFrameBox.iWidth; cWindowTitle.init(); cWindowTitle.setDimension(&cFrameTitle); cWindowTitle.setColor(COL_MENUHEAD_PLUS_0); cWindowTitle.setCorner(RADIUS_MID, CORNER_TOP); cWindowTitle.setGradient(g_settings.Head_gradient); cWindowTitle.paint(); // title int timestr_len = 0; std::string timestr = getNowTimeStr("%d.%m.%Y %H:%M");; timestr_len = g_Font[SNeutrinoSettings::FONT_TYPE_EVENTLIST_ITEMLARGE]->getRenderWidth(timestr.c_str(), true); // UTF-8 g_Font[SNeutrinoSettings::FONT_TYPE_MENU_TITLE]->RenderString(cFrameTitle.iX + BORDER_LEFT, cFrameTitle.iY + cFrameTitle.iHeight, cFrameTitle.iWidth - BORDER_LEFT - BORDER_RIGHT - timestr_len, caption.c_str() , COL_MENUHEAD); // paint time/date g_Font[SNeutrinoSettings::FONT_TYPE_EVENTLIST_ITEMLARGE]->RenderString(cFrameTitle.iX + cFrameTitle.iWidth - BORDER_RIGHT - timestr_len, cFrameTitle.iY + (cFrameTitle.iHeight - g_Font[SNeutrinoSettings::FONT_TYPE_EVENTLIST_ITEMLARGE]->getHeight())/2 + g_Font[SNeutrinoSettings::FONT_TYPE_EVENTLIST_ITEMLARGE]->getHeight(), timestr_len + 1, timestr.c_str(), COL_MENUHEAD, 0, true); }
bool CExtUpdate::applySettings(std::string & filename, int mode) { if(!FileHelpers) FileHelpers = new CFileHelpers(); if (mode == MODE_EXPERT) imgFilename = (std::string)g_settings.update_dir + "/" + FILESYSTEM_ENCODING_TO_UTF8_STRING(filename); else imgFilename = FILESYSTEM_ENCODING_TO_UTF8_STRING(filename); DBG_TIMER_START() std::string oldFilename = imgFilename; std::string hostName = netGetHostname(); std::string orgPath = getPathName(imgFilename); std::string orgName = getBaseName(imgFilename); orgName = getFileName(orgName); std::string orgExt = "." + getFileExt(imgFilename); std::string timeStr = getNowTimeStr("_%Y%m%d_%H%M"); std::string settingsStr = "+settings"; if (orgPath != "/tmp") { if (g_settings.softupdate_name_mode_apply == CExtUpdate::SOFTUPDATE_NAME_HOSTNAME_TIME) imgFilename = orgPath + "/" + hostName + timeStr + settingsStr + orgExt; else if (g_settings.softupdate_name_mode_apply == CExtUpdate::SOFTUPDATE_NAME_ORGNAME_TIME) imgFilename = orgPath + "/" + orgName + timeStr + settingsStr + orgExt; else imgFilename = orgPath + "/" + orgName + settingsStr + orgExt; FileHelpers->copyFile(oldFilename.c_str(), imgFilename.c_str(), 0644); } else imgFilename = oldFilename; filename = imgFilename; bool ret = applySettings(); DBG_TIMER_STOP("Image editing") if (!ret) { if ((mtdRamError != "") && (!flashErrorFlag)) DisplayErrorMessage(mtdRamError.c_str()); // error, delete image file unlink(imgFilename.c_str()); } else { if (mode == MODE_EXPERT) { if ((mtdNumber < 3) || (mtdNumber > 4)) { const char *err = "invalid mtdNumber\n"; printf(err); DisplayErrorMessage(err); WRITE_UPDATE_LOG("ERROR: %s", err); return false; } } WRITE_UPDATE_LOG("\n"); WRITE_UPDATE_LOG("##### Settings taken. #####\n"); if (mode == MODE_EXPERT) CFlashExpert::getInstance()->writemtd(filename, mtdNumber); } return ret; }