//++ ------------------------------------------------------------------------------------ // Details: The invoker requires this function. The command prepares a MI Record Result // for the work carried out in the Execute(). // Type: Overridden. // Args: None. // Return: MIstatus::success - Functional succeeded. // MIstatus::failure - Functional failed. // Throws: None. //-- bool CMICmdCmdInterpreterExec::Acknowledge( void ) { if( m_lldbResult.GetOutputSize() > 0 ) { CMIUtilString strMsg( m_lldbResult.GetOutput() ); strMsg = strMsg.StripCREndOfLine(); CMICmnStreamStdout::TextToStdout( strMsg ); // Send the LLDB result message to console so the user can see the result of the // command they typed. It is not necessary an error message. CMICmnStreamStderr::LLDBMsgToConsole( strMsg ); } if( m_lldbResult.GetErrorSize() > 0 ) { CMIUtilString strMsg( m_lldbResult.GetError() ); strMsg = strMsg.StripCREndOfLine(); CMICmnStreamStderr::LLDBMsgToConsole( strMsg ); // Send LLDB's error message to the MI Driver's Log file CMICmnStreamStdout::TextToStdout( strMsg ); } const CMICmnMIResultRecord miRecordResult( m_cmdData.strMiCmdToken, CMICmnMIResultRecord::eResultClass_Done ); m_miResultRecord = miRecordResult; return MIstatus::success; }
std::string CPropertySheetHelper::GetSlot(const UINT uSlot) { // strMsg = ". Slot n: "; std::string strMsg(". Slot "); strMsg += '0' + uSlot; strMsg += ": "; const SS_CARDTYPE OldCardType = m_ConfigOld.m_Slot[uSlot]; const SS_CARDTYPE NewCardType = m_ConfigNew.m_Slot[uSlot]; if ((OldCardType == CT_Empty) || (NewCardType == CT_Empty)) { if (NewCardType == CT_Empty) { strMsg += GetCardName(OldCardType); strMsg += " card removed\n"; } else { strMsg += GetCardName(NewCardType); strMsg += " card added\n"; } } else { strMsg += GetCardName(OldCardType); strMsg += " card removed & "; strMsg += GetCardName(NewCardType); strMsg += " card added\n"; } return strMsg; }
//void CMaintenanceMenu::OnButton7(int iEvent, unsigned char * pEventData, int iDataLen) //{ // string strErr = ""; // // DBG_PRINT(("g_globalArg->m_curInvVol->m_ieno = %u", g_globalArg->m_curInvVol->m_ieno)); // DBG_PRINT(("g_globalArg->m_curInvVol->m_remain = %u", g_globalArg->m_curInvVol->m_remain)); // INT32 nOldCurNo = g_globalArg->m_curInvVol->m_ieno + 1 - // g_globalArg->m_curInvVol->m_remain; // DBG_PRINT(("g_globalArg->m_curInvVol->m_ieno = %u", nOldCurNo)); // // if (g_globalArg->m_initFlag == 0) // { // strErr = "机器未初始化"; // CaMsgBox::ShowMsg(strErr); // return ; // } // // string strInvNo(""); // INT32 status; // INT8 tmpstr[128]; // UINT32 curInvNo; // CInvVol invVol; // // DBG_ENTER("CDeptEditWin::DoActive()"); // ReFresh(); // // CaMsgBox msgBox("新当前号:",CaMsgBox::MB_INPUT); // msgBox.SetInputType(CaInput::aINT); // msgBox.SetMaxInputLen(8); // while (1) // { // msgBox.ShowBox(); // status = msgBox.m_iStatus; // strInvNo = (INT8 *)msgBox.GetInputContent(); // if (status != OK_PRESSED || strInvNo != "") // break; // // CaMsgBox::ShowMsg("请输入有效发票号"); // } // // if (status == OK_PRESSED) // { // curInvNo = atoi(strInvNo.c_str()); // DBG_PRINT(("curInvNo = %u", curInvNo)); // // if (curInvNo <= 0) // { // CaMsgBox::ShowMsg("当前发票号必须大于0"); // this->ReFresh(); // return; // } // // DBG_PRINT(("m_InvStartNo = %u", g_globalArg->m_curInvVol->m_isno)); // DBG_PRINT(("m_InvEndNo = %u", g_globalArg->m_curInvVol->m_ieno)); //// if((curInvNo < g_globalArg->m_curInvVol->m_InvStartNo)|| //// ((curInvNo - g_globalArg->m_curInvVol->m_InvStartNo) >= MAX_INV_VOL_NUM)) // if( curInvNo < g_globalArg->m_curInvVol->m_isno || // curInvNo > g_globalArg->m_curInvVol->m_ieno) // { // CaMsgBox::ShowMsg("当前发票号必须属于当前卷"); // this->ReFresh(); // return; // } // // DBG_PRINT(("nOldCurNo = u%", nOldCurNo)); // DBG_PRINT(("curInvNo = u%", curInvNo)); // if (curInvNo <= nOldCurNo) // { // CaMsgBox::ShowMsg("不能向前更新"); // this->ReFresh(); // return; // } // // //更新INV_VOL中的当前卷信息 // string sqlstr= ""; // INT32 errcode; // UINT32 nRemain = g_globalArg->m_curInvVol->m_ieno - curInvNo + 1; // // sprintf(tmpstr,"update INV_VOL set REMAIN = %u where CODE = '%s' and IS_NO = %u", // nRemain, g_globalArg->m_curInvVol->m_code.c_str(), // g_globalArg->m_curInvVol->m_isno); // sqlstr=tmpstr; // invVol.SetSQL(sqlstr); // errcode = invVol.ExecuteSQL(); // if (invVol.ExecuteSQL() != SQLITE_OK) // { // DBG_PRINT(("更新当前发票号错误 errcode=%d", errcode)); // CaMsgBox::ShowMsg("更新当前发票号失败"); // return; // } // g_globalArg->m_curInvVol->m_remain = nRemain; // CaMsgBox::ShowMsg("更新当前发票号成功"); // } //} void CMaintenanceMenu::OnButton7(int iEvent, unsigned char * pEventData, int iDataLen) { string strMsg(""); COperator oper; INT8 chValue[64]; memset((void*)chValue, 0, sizeof(chValue)); sprintf(chValue, "where ROLE = %u", DIRECTOR_ROLE); oper.m_filter = chValue; oper.Requery(); INT32 errcode = oper.LoadOneRecord(); if (SQLITE_DONE == errcode) { strMsg = "无主管员工"; } else if (SQLITE_OK == errcode) { sprintf(chValue, "密码:%s", oper.m_passwd.c_str()); strMsg = chValue; } else { strMsg = "查询主管员工失败"; } CaMsgBox::ShowMsg(strMsg); }
HRESULT GenerateError (REFCLSID rClsId, REFIID riid, LPCOLESTR pcHelpFile, HRESULT hRes) { #endif CComBSTR strMsgLine; DWORD dwErr = FormatMessageLine( strMsgLine, hRes, NULL ); #if defined(_DEBUG) USES_CONVERSION; if( dwErr ) { LPTSTR lptMsg = NULL; CComBSTR strMsg(L"\n---------------------- Fehler beim Erzeugen der Fehlermeldung ----------------------\n"); if( ::FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_ALLOCATE_BUFFER, NULL, dwErr, 1024, (LPTSTR) &lptMsg, 0, NULL ) ) { USES_CONVERSION; strMsg.Append( A2W(lptMsg) ); ::LocalFree(lptMsg); if( 0x716 == dwErr ) { strMsg.Append(L"\n----------------------------------------------------------------------------------------"); strMsg.Append( L"\nHat die Message-Ressource den Wert 1? ;-)" ); } strMsg.Append(L"\n----------------------------------------------------------------------------------------"); _CrtDbgReport(_CRT_ASSERT, strFile, line, NULL, W2A(strMsg) ); return E_FAIL; } } CComBSTR strDbgLine; FormatDebuggerLine( strDbgLine, hRes, strFile, line, strExpr ); strDbgLine.Append( _T("\t") ); strDbgLine.Append( strMsgLine ); strDbgLine.Append( _T("\n") ); { ATLTRACE( W2A(strDbgLine) ); } #endif DWORD dwHelpID = hRes; return AtlReportError(rClsId, strMsgLine, dwHelpID, pcHelpFile, riid, hRes); }
/* acceptConnection allows a connection from a connect socket and returns a filePo which can read/write to the remote host */ retCode acceptConnection(sockPo listen, ioEncoding encoding, ioPo *inC, ioPo *outC) { struct sockaddr_in cli_addr; socklen_t clilen = sizeof(cli_addr); int lSock = fileNumber(O_FILE(listen)); int cliSock; memset((char *) &cli_addr, 0, sizeof(cli_addr)); cliSock = accept(lSock, (struct sockaddr *) &cli_addr, &clilen); if (cliSock < 0) { switch (errno) { case EWOULDBLOCK: return Fail; case EINTR: // Interrupted return Eof; default: return Error; } } else { char cl_name[MAXLINE]; struct in_addr addr = *(struct in_addr *) &cli_addr; strMsg(cl_name, NumberOf(cl_name), "%s:%d", inet_ntoa(addr), ntohs(cli_addr.sin_port)); *inC = O_IO(newObject(sockClass, cl_name, cliSock, encoding, ioREAD)); *outC = O_IO(newObject(sockClass, cl_name, cliSock, encoding, ioWRITE)); return Ok; } }
//++ //------------------------------------------------------------------------------------ // Details: The invoker requires this function. The command prepares a MI Record // Result // for the work carried out in the Execute(). // Type: Overridden. // Args: None. // Return: MIstatus::success - Functional succeeded. // MIstatus::failure - Functional failed. // Throws: None. //-- bool CMICmdCmdInterpreterExec::Acknowledge() { if (m_lldbResult.GetOutputSize() > 0) { CMIUtilString strMsg(m_lldbResult.GetOutput()); strMsg = strMsg.StripCREndOfLine(); CMICmnStreamStdout::TextToStdout(strMsg); } if (m_lldbResult.GetErrorSize() > 0) { CMIUtilString strMsg(m_lldbResult.GetError()); strMsg = strMsg.StripCREndOfLine(); CMICmnStreamStderr::LLDBMsgToConsole(strMsg); } const CMICmnMIResultRecord miRecordResult( m_cmdData.strMiCmdToken, CMICmnMIResultRecord::eResultClass_Done); m_miResultRecord = miRecordResult; return MIstatus::success; }
void DeleteVideoToServer(LPVOID lpParam) { TCHAR* pKeyBuffer = (TCHAR*)lpParam; TSTLSTRING strKey = TSTLSTRING(pKeyBuffer); delete [] pKeyBuffer; VideoInfo item = VideoDataManager::GetInstance().GetVideoInfo(strKey); string PackageDataSegment("VideoID="); PackageDataSegment.append(CT2A(item.VideoID.c_str())); vector<BYTE> vPostData(PackageDataSegment.length()); memcpy(&vPostData.at(0), PackageDataSegment.c_str(), PackageDataSegment.length()); try { vector<BYTE> vResponseData; WebClient::Download(VideoConfig::GetInstance().GetVideoProxyDeleteVideoUrl(), vResponseData, vPostData); vResponseData.push_back(0); Encoding encode; TSTLSTRING strRetValue = CW2T(encode.Convert((const char*)&vResponseData.at(0), CP_UTF8).c_str()); TSTLSTRING::size_type pos = strRetValue.find(TEXT(":")); if(pos == TSTLSTRING::npos) { TSTLSTRING ErrMsg(TEXT("·þÎñÆ÷·µ»ØÒì³££¡£¨")); ErrMsg.append(strRetValue); ErrMsg.append(TEXT("£©")); VideoDataManager::GetInstance().ErrorDeleteVideoAndResume(strKey, ErrMsg); throw Exception(ErrMsg); } if(TEXT("OK") == strRetValue.substr(0, pos)) { TSTLSTRING strMsg(item.VideoName); CTipsDlg::ShowTips(strMsg, false); VideoDataManager::GetInstance().LocalDeleteVideo(strKey); } else { TSTLSTRING ErrMsg(TEXT("ɾ³ýÊÓƵʧ°Ü£¡£¨")); ErrMsg.append(strRetValue.substr(pos + 1)); ErrMsg.append(TEXT("£©")); VideoDataManager::GetInstance().ErrorDeleteVideoAndResume(strKey, ErrMsg); throw Exception(ErrMsg); } } catch(Exception& error) { VideoDataManager::GetInstance().VideoFail(strKey, error.GetMessage()); MessageBox(NULL, error.GetMessage().c_str(), TEXT("´íÎó"), MB_OK|MB_ICONERROR); } }
bool ClientHandler::OnConsoleMessage(CefRefPtr<CefBrowser> browser, const CefString& message, const CefString& source, int line) { REQUIRE_UI_THREAD(); bool first_message; std::string logFile; { AutoLock lock_scope(this); first_message = m_LogFile.empty(); if(first_message) { std::stringstream ss; ss << AppGetWorkingDirectory(); #if defined(OS_WIN) ss << "\\"; #else ss << "/"; #endif ss << "console.log"; m_LogFile = ss.str(); } logFile = m_LogFile; } FILE* file = fopen(logFile.c_str(), "a"); if(file) { std::stringstream ss; ss << "Message: " << std::string(message) << "\r\nSource: " << std::string(source) << "\r\nLine: " << line << "\r\n-----------------------\r\n"; fputs(ss.str().c_str(), file); fclose(file); if(first_message) SendNotification(NOTIFY_CONSOLE_MESSAGE); } if( browser ) { //auto show console if something is Uncaught std::string strMsg(message); const char * err = "Uncaught "; if( 0 == strncmp(strMsg.c_str(), err, strlen(err) ) ) { browser->ShowDevTools(); } } return false; }
void CLocalSvrCommunication::GetData( ) { QLocalSocket* pSocket = qobject_cast< QLocalSocket* >( sender( ) ); quint64 nDataSize = pSocket->bytesAvailable( ); if ( 0 == nDataSize ) { return; } QByteArray byData = pSocket->readAll( ); QString strMsg( byData ); emit NotifyMsg( strMsg ); }
// This is the command 'NOTIFY' void asdkBubble() { // Create the bubble notification message, and callbacks. int result; AcApDocument *pDoc=acDocManager->curDocument(); CString strMsg((CString)_T("Document ")+pDoc->docTitle()+_T(" Notification")); AcTrayItemBubbleWindowControl bwControl(_T("Attention!"), strMsg, _T("HyperText Here"), _T("www.autodesk.com")); bwControl.SetIconType(AcTrayItemBubbleWindowControl::BUBBLE_WINDOW_ICON_INFORMATION); bwControl.SetCallback(BubbleWindowCallback, pDoc); // Display the notification at the first of our icons - kept as a pointer in the map. CTrayItem *pFirstTrayItem=NULL; documentTrayMap.Lookup(acDocManager->curDocument(),pFirstTrayItem); if(pFirstTrayItem) result=pFirstTrayItem->ShowBubbleWindow(&bwControl); }
void KeTunnelClient::OnRouterMessage(const std::string &peer_id, talk_base::Buffer &msg) { std::string strMsg(msg.data(),msg.length()); Json::Reader reader; Json::Value jmessage; if (!reader.parse(strMsg, jmessage)) { LOG(WARNING) << "Received unknown message. " << strMsg; return; } std::string command; bool ret = GetStringFromJsonObject(jmessage, kKaerMsgCommandName, &command); if(!ret){ LOG(WARNING)<<"get command error"<<peer_id<<" Msg "<<strMsg; return; } }
void ClientConn::_HandleMsgData(CImPdu* pPdu) { IM::Message::IMMsgData msg; uint32_t nSeqNo = pPdu->GetSeqNum(); if(msg.ParseFromArray(pPdu->GetBodyData(), pPdu->GetBodyLength())) { play("message.wav"); uint32_t nFromId = msg.from_user_id(); uint32_t nToId = msg.to_session_id(); uint32_t nMsgId = msg.msg_id(); IM::BaseDefine::MsgType nMsgType = msg.msg_type(); uint32_t nCreateTime = msg.create_time(); string strMsg(msg.msg_data().c_str(), msg.msg_data().length()); IM::BaseDefine::SessionType nSessionType; if(nMsgType == IM::BaseDefine::MSG_TYPE_SINGLE_TEXT) { nSessionType = IM::BaseDefine::SESSION_TYPE_SINGLE; } else if(nMsgType == IM::BaseDefine::MSG_TYPE_SINGLE_AUDIO) { nSessionType = IM::BaseDefine::SESSION_TYPE_SINGLE; } else if(nMsgType == IM::BaseDefine::MSG_TYPE_GROUP_TEXT) { nSessionType = IM::BaseDefine::SESSION_TYPE_GROUP; } else if(nMsgType == IM::BaseDefine::MSG_TYPE_GROUP_AUDIO) { nSessionType = IM::BaseDefine::SESSION_TYPE_GROUP; } if(nSessionType == IM::BaseDefine::SESSION_TYPE_SINGLE) sendMsgAck(nToId , nFromId , nSessionType, nMsgId); m_pCallback->onRecvMsg(nSeqNo, nFromId, nToId, nMsgId, nCreateTime, nMsgType, strMsg); sendMsgReadAck( nToId , nFromId , nSessionType, nMsgId); } else { m_pCallback->onError(nSeqNo, pPdu->GetCommandId(), "parse pb falied"); } }
bool CPropertySheetHelper::HardwareConfigChanged(HWND hWnd) { std::string strMsg("The emulator needs to restart as the hardware configuration has changed:\n"); strMsg += "\n"; std::string strMsgMain; { if (CONFIG_CHANGED(m_Apple2Type)) strMsgMain += ". Emulated computer has changed\n"; if (CONFIG_CHANGED(m_Slot[4])) strMsgMain += GetSlot(4); if (CONFIG_CHANGED(m_Slot[5])) strMsgMain += GetSlot(5); if (CONFIG_CHANGED(m_bEnhanceDisk)) strMsgMain += ". Floppy disk speed setting has changed\n"; if (CONFIG_CHANGED(m_bEnableHDD)) strMsgMain += ". Harddisk(s) have been plugged/unplugged\n"; if (CONFIG_CHANGED(m_bEnableTheFreezesF8Rom)) strMsgMain += ". F8 ROM changed (The Freeze's F8 Rom)\n"; } std::string strMsgPost("\n"); strMsgPost += "This change will not take effect until the next time you restart the emulator.\n\n"; strMsgPost += "Would you like to restart the emulator now?"; strMsg += strMsgMain; strMsg += strMsgPost; if (MessageBox(hWnd, strMsg.c_str(), TEXT(REG_CONFIG), MB_ICONQUESTION | MB_OKCANCEL | MB_SETFOREGROUND) == IDCANCEL) return false; return true; }
void CBuzzQT::Draw(CBuzzController& c_contr) { /* This is the message that will be shown */ std::string strMsg("R" + ToString(c_contr.GetBuzzVM()->robot)); /* Append debug message */ if(c_contr.GetDebugMsg() != "") strMsg += ": " + c_contr.GetDebugMsg(); /* Disable face culling to be sure the text is visible from anywhere */ glDisable(GL_CULL_FACE); /* Disable lighting, so it does not interfere with the chosen text color */ glDisable(GL_LIGHTING); /* Set the text color */ CColor cColor(CColor::BLACK); glColor3ub(cColor.GetRed(), cColor.GetGreen(), cColor.GetBlue()); /* The position of the text is expressed wrt the reference point of * the robot */ GetOpenGLWidget().renderText(0.0, 0.0, 0.4, // position strMsg.c_str()); // text /* Restore lighting */ glEnable(GL_LIGHTING); /* Restore face culling */ glEnable(GL_CULL_FACE); }
void CCropDialog::on_pushButtonCrop_clicked() { /* ************************* m_pCropThread = new CCropThread(this); m_pCropThread->start(); **************************** */ QString strTemplateFilename(tr("%1/%2") .arg(ui.lineEditSourceFolder->text()) .arg(sTEMPLATE_IMAGE_FILENAME)); if(QFile::exists(strTemplateFilename) != true) { QMessageBox::critical(this, tr("Missing the template image file"), tr("%1 is necessary to crop the image stacks.") .arg(sTEMPLATE_IMAGE_FILENAME)); return; } // make sub folders for cropped data QString strZoomOutFolder, strColumnFolder; QDir Dir; m_bStartCropping = true; ui.pushButtonCrop->setEnabled(false); ui.pushButtonPauseResume->setEnabled(true); ui.listWidgetOutput->clear(); m_bProcessFinished = true; m_bPause = false; //////////////////////////////// // ZO_1 is not a part of ZoomOutLevel, but needs to be made. for(quint32 i = 0, nZoomOutLevel = 1; i < m_TissueBlock.m_nNumZoomLevel+1; i++, nZoomOutLevel *= 2) { strZoomOutFolder = ui.lineEditDestFolder->text() + "/" + QString(sZOOM_OUT_DIR_PREFIX"%1") .arg(nZoomOutLevel); Dir.mkdir(strZoomOutFolder); PrintToOutput(strZoomOutFolder + " folder created."); for(quint32 j = 0; j < m_TissueBlock.m_nNumCol; j++) { strColumnFolder = strZoomOutFolder + "/" + QString("%1").arg(j); Dir.mkdir(strColumnFolder); PrintToOutput("\t" + strColumnFolder + " folder created."); } } // open list for source image files qint32 nOffset = (m_TissueBlock.m_nStartCol > m_TissueBlock.m_nEndCol) ? -1 : 1; //QString strSrcFile; QString strLine; quint32 nSrcStartCol = m_TissueBlock.m_nStartCol; ///////////////////// // specify a task that processes only one column quint32 nColsToCrop = m_TissueBlock.m_nNumCol; quint32 iCol = 0; //if(m_nSrcCropCol != -1) // an image stack number is specified if(ui.comboBoxColumn->currentText() != "All") { int nSrcCropCol = ui.comboBoxColumn->currentText().toInt(); iCol = qAbs((int)nSrcStartCol - nSrcCropCol);//(int)m_nSrcCropCol); nColsToCrop = iCol+1; // only one column nSrcStartCol = nSrcCropCol;//m_nSrcCropCol; } //for( i = 0; i < m_TissueBlock.m_nNumCol; i++, nSrcStartCol+=nOffset) for(; iCol < nColsToCrop; iCol++, nSrcStartCol+=nOffset) { #if 0 ////////////////////////////////////////////////////////////////////// // src image crop area QString strCropFile(tr("%1/%2_crop_point.txt") .arg(ui.lineEditSourceFolder->text()) .arg(nSrcStartCol)); QFile fileCrop(strCropFile); if(!(fileCrop.open(QFile::ReadOnly | QFile::Text))) { PrintToOutput(tr("No %1 exists.").arg(strCropFile)); continue; // ignore no folder exists //QMessageBox::critical(this, tr("File open error"), // tr("No %1 exists.").arg(strCropFile)); //return; } QTextStream txtstrmCrop(&fileCrop); while(!txtstrmCrop.atEnd()) { strLine = txtstrmCrop.readLine(); if(strLine.isNull()) break; m_TissueBlock.m_vCropStartX.append(strLine.toInt()); }; ////////////////////////////////////////////////////////////////////// // src image crop area index QString strChunkPosFile(tr("%1/%2_chunk_pos.txt") .arg(ui.lineEditSourceFolder->text()) .arg(nSrcStartCol)); QFile fileChunkPos(strChunkPosFile); if(!fileChunkPos.open(QFile::ReadOnly | QFile::Text)) { PrintToOutput(tr("No %1 exists.").arg(strChunkPosFile)); continue; // ignore no folder exists //QMessageBox::critical(this, tr("File open error"), // tr("No %1 exists.").arg(strChunkPosFile)); //return; } QTextStream txtstrmChunkPos(&fileChunkPos); while(!txtstrmChunkPos.atEnd()) { strLine = txtstrmChunkPos.readLine(); if(strLine.isNull()) break; m_TissueBlock.m_vChunkPos.append(strLine.toDouble()); } #endif QString strSubFolder(tr("%1/%2") .arg(ui.lineEditSourceFolder->text()) .arg(nSrcStartCol)); QDir dirDataFolder(strSubFolder); QStringList slstFilters; slstFilters << QString(tr("*%1").arg(m_Settings.m_strDestFileFormat)); dirDataFolder.setNameFilters(slstFilters); QStringList slstEntry = dirDataFolder.entryList(); PrintToOutput(tr("Files: %1").arg(slstEntry.count())); if(slstEntry.count() > 0) ui.progressBarImage->setRange(0, slstEntry.count()-1); QString strDestImage, strOptions, strSrcImage, strArgs; //QStrinList strlstLine; qreal rZ; quint32 nImage;//, nStartImage;//, nIndexChunk = 0; //bool bFirst = true; //while(!txtstrmSrc.atEnd()) for(int iImage = 0; iImage < slstEntry.count(); iImage++) { //QStringList slstImageFile = slstEntry.at(nImage).split("."); QString strImageFile = slstEntry.at(iImage); // src image filename //strLine = txtstrmSrc.readLine(); //if(strLine.isNull()) // break; // get z coordinate value int nPosZ = strImageFile.indexOf('z', 0);//strLine.indexOf('z', 0); if(nPosZ == -1) { QMessageBox::critical(this, tr("Invalid src image filename"), tr("%1 is an invalid src image filename.") .arg(strImageFile)); //.arg(strLine)); m_bStartCropping = false; ui.pushButtonCrop->setEnabled(true); ui.pushButtonPauseResume->setEnabled(false); return; } rZ = strImageFile.mid(nPosZ+1, 6).toDouble();//strLine.mid(nPosZ+1, 6).toDouble(); nImage = qRound((rZ - m_TissueBlock.m_rMinStartZ)\ /m_TissueBlock.m_rThickness); //if(bFirst) //{ // bFirst = false; // nStartImage = nImage; //} #if 0 //if((nImage - nStartImage) == m_TissueBlock.m_vChunkPos[nIndexChunk]) if(rZ == m_TissueBlock.m_vChunkPos[nIndexChunk]) nIndexChunk++; #endif // make src filename strSrcImage = QString(tr("%1/%2/%3") .arg(ui.lineEditSourceFolder->text()) .arg(nSrcStartCol) .arg(strImageFile));//.arg(strLine)); // make dest filename QString strZoomOutDir = m_Settings.m_strZoomOutDirPrefix + "1"; //strDestImage = QString(tr("%1/%2/%3/%4%5") // .arg(ui.lineEditDestFolder->text()) // .arg(strZoomOutDir) // .arg(i) // .arg(nImage) // .arg(m_Settings.m_strDestFileFormat)); strDestImage.sprintf("%s/%s/%d/%05d%s", ui.lineEditDestFolder->text().toStdString().c_str(), strZoomOutDir.toStdString().c_str(), iCol, // jrkwon: %05d nImage, m_Settings.m_strDestFileFormat.toStdString().c_str()); #if 0 strOptions = QString(tr("%1x%2+%3+%4") .arg(m_TissueBlock.m_nWidth) .arg(m_TissueBlock.m_nLength) .arg(m_TissueBlock.m_vCropStartX[nIndexChunk]) .arg(0)); strArgs = QString(tr("%1 -crop %2 %3") .arg(strSrcImage) .arg(strOptions) .arg(strDestImage)); PrintToOutput(strArgs); QStringList strlstArgs; strlstArgs << strSrcImage << tr("-crop") << strOptions << strDestImage; QString strImageMagickConvert; strImageMagickConvert = QString(tr("%1%2%3%4") .arg(m_Settings.m_strProjectDir) .arg(m_Settings.m_strToolkit) .arg(m_Settings.m_strImageMagick) .arg("/convert")); #endif ui.progressBarColumn->setValue(iCol); ui.progressBarImage->setValue(iImage); #if 0 while(m_bProcessFinished == false || m_bPause) { QCoreApplication::processEvents(); } m_Process.start(strImageMagickConvert, strlstArgs); m_bProcessFinished = false; //PrintToOutput(strImageMagickConvert); QCoreApplication::processEvents(); #endif // see if there already is a dest file, and do this only no dest file exists if(QFile::exists(strDestImage) == false) { quint32 nStartX; if(GetCropX(strSrcImage, nStartX)) { //DoCrop(m_TissueBlock.m_vCropStartX[nIndexChunk], 0, DoCrop(nStartX, 0, m_TissueBlock.m_nWidth, m_TissueBlock.m_nLength, strSrcImage, strDestImage); QString strMsg(tr("CropX: %1, Src: %2, Dest: %3") .arg(nStartX).arg(strSrcImage).arg(strDestImage)); PrintToOutput(strMsg); } } if(m_bStartCropping != true) { ui.pushButtonCrop->setEnabled(true); ui.pushButtonPauseResume->setEnabled(false); ui.progressBarColumn->setValue(0); ui.progressBarImage->setValue(0); return; } } } ui.pushButtonCrop->setEnabled(true); ui.pushButtonPauseResume->setEnabled(false); }
//根据错误码解析成具体的错误信息 CString CUserAddDlg::GetSdkErrorInfo(int nError) { CString strMsg(_CS("Error.UnkownErr")); switch(nError) { case H264_DVR_SDK_NOTVALID: //非法请求 strMsg = _CS("Error.ReqErr"); break; case H264_DVR_NO_INIT: //SDK未经初始化 strMsg = _CS("Error.NoInit"); break; case H264_DVR_ILLEGAL_PARAM: //用户参数不合法 strMsg = _CS("Error.ParamInvalid"); break; case H264_DVR_INVALID_HANDLE: //句柄无效 strMsg = _CS("Error.HandleInvalid"); break; case H264_DVR_SDK_UNINIT_ERROR: //SDK清理出错 strMsg = _CS("Error.ClearSDKError"); break; case H264_DVR_SDK_TIMEOUT: //等待超时 strMsg = _CS("Error.Timeout"); break; case H264_DVR_SDK_MEMORY_ERROR: //内存错误,创建内存失败 strMsg = _CS("Error.MallocErr"); break; case H264_DVR_SDK_NET_ERROR: //网络错误 strMsg = _CS("Error.NetErr"); break; case H264_DVR_DEV_VER_NOMATCH: //收到数据不正确,可能版本不匹配 strMsg = _CS("Error.VerUnmatch"); break; case H264_DVR_SDK_NOTSUPPORT: //版本不支持 strMsg = _CS("Error.Unsupport"); break; case H264_DVR_OPEN_CHANNEL_ERROR: //打开通道失败 strMsg = _CS("Error.OpenChnErr"); break; case H264_DVR_CLOSE_CHANNEL_ERROR: //关闭通道失败 strMsg = _CS("Error.CloseChnErr"); break; case H264_DVR_SUB_CONNECT_ERROR: //建立媒体子连接失败 strMsg = _CS("Error.SubConErr"); break; case H264_DVR_SUB_CONNECT_SEND_ERROR://媒体子连接通讯失败 strMsg = _CS("Error.SubConSendErr"); break; case H264_DVR_NOPOWER: //无权限 strMsg = _CS("Error.NoPower"); break; case H264_DVR_PASSWORD_NOT_VALID: // 账号密码不对 strMsg = _CS("Error.PwdErr"); break; case H264_DVR_LOGIN_USER_NOEXIST: //用户不存在 strMsg = _CS("Error.UserNotExisted"); break; case H264_DVR_USER_LOCKED: // 该用户被锁定 strMsg = _CS("Error.UserLock"); break; case H264_DVR_USER_IN_BLACKLIST: // 该用户不允许访问(在黑名单中) strMsg = _CS("Error.InBlackList"); break; case H264_DVR_USER_HAS_USED: // 该用户以登陆 strMsg = _CS("Error.HasLogined"); break; case H264_DVR_USER_NOT_LOGIN : // 该用户没有登陆 strMsg = _CS("Error.NoLogin"); break; case H264_DVR_CONNECT_DEVICE_ERROR: //可能设备不存在 strMsg = _CS("Error.NotFound"); break; case H264_DVR_ACCOUNT_INPUT_NOT_VALID: //用户管理输入不合法 strMsg = _CS("Error.InputError"); break; case H264_DVR_ACCOUNT_OVERLAP: //索引重复 strMsg = _CS("AccountMSG.AccountUsed"); break; case H264_DVR_ACCOUNT_OBJECT_NONE: //不存在对象, 用于查询时 strMsg = _CS("AccountMSG.EmptyName"); break; case H264_DVR_ACCOUNT_OBJECT_NOT_VALID: //不存在对象 strMsg = _CS("Error.NotFound"); break; case H264_DVR_ACCOUNT_OBJECT_IN_USE: //对象正在使用 strMsg = _CS("Error.InUsing"); break; case H264_DVR_ACCOUNT_SUBSET_OVERLAP: //子集超范围 (如组的权限超过权限表,用户权限超出组的权限范围等等) strMsg = _CS("AccountMSG.TooLargeAuthority"); break; case H264_DVR_ACCOUNT_PWD_NOT_VALID: //密码不正确 strMsg = _CS("Error.PwdErr"); break; case H264_DVR_ACCOUNT_PWD_NOT_MATCH: //密码不匹配 strMsg = _CS("AccountMSG.PasswordMismatch"); break; case H264_DVR_ACCOUNT_RESERVED: //保留帐号 strMsg = _CS("AccountMSG.TryModifyResvUser"); break; case H264_DVR_OPT_FILE_ERROR: // 写文件出错 strMsg = _CS("Error.SetConfigFail"); break; case H264_DVR_OPT_CAPS_ERROR: // 配置特性不支持 strMsg = _CS("Error.ConfigCharsetUnsupport"); break; case H264_DVR_OPT_VALIDATE_ERROR: // 配置校验失败 strMsg = _CS("Error.ConfigVerifyFail"); break; case H264_DVR_OPT_CONFIG_NOT_EXIST: // 请求或者设置的配置不存在 strMsg = _CS("Error.ConfigNotFound"); break; case H264_DVR_CTRL_PAUSE_ERROR: //暂停失败 strMsg = _CS("Error.PauseFail"); break; default: { //如果没有,则返回设备端错误码 CString strError; strError.Format(_T("(%d)"), nError * ( -1 ) ); //根据原来的返回值的相反值取原来的返回值 strMsg += strError; } break; } return strMsg; }
void CUserAddDlg::OnBnClickedOk() { UpdateData(); m_strName.TrimLeft(); m_strName.TrimRight(); m_strGroupName.TrimLeft(); m_strGroupName.TrimRight(); //验证输入的数据是否合法 if ( "" == m_strName ) { MessageBox(_CS("AccountMSG.EmptyName"), _CS("OneClick.Prompt")); return; } if(m_strName[0]=='&') { MessageBox(_CS("AccountMSG.ErrorName"), _CS("OneClick.Prompt")); return; } if(m_strName.Find('.')!=-1||m_strName.Find('[')!=-1||m_strName.Find(']')!=-1 || m_strName.Find('%') != -1) { MessageBox(_CS("AccountMSG.ErrorName"), _CS("OneClick.Prompt")); return; } //验证密码是否匹配 if ( m_strPsw != m_strConfirm ) { MessageBox(_CS("Error.PwdErr"), _CS("OneClick.Prompt")); return; } //验证用户名是否已经存在 if ( FindUserName(m_strName.GetBuffer(0)) ) { MessageBox(_CS("AccountMSG.AddUserExist"), _CS("OneClick.Prompt")); return; } USER_INFO userInfo; //获取选择的权限列表 int nIndex = 0; int nSize = m_listAuthority.GetItemCount(); for ( int i = 0; i < nSize; i ++ ) { if ( m_listAuthority.GetCheck(i) ) { CString strName = (char *)m_listAuthority.GetItemData(i); strcpy( userInfo.rights[nIndex ++], strName.GetBuffer(0) ); } } userInfo.rigthNum = nIndex; if ( nIndex <= 0 ) { MessageBox(_CS("AccountMSG.EmptyAuthority"), _CS("OneClick.Prompt")); return; } userInfo.reserved = false; userInfo.shareable = m_checkReuseable.GetCheck(); strcpy ( userInfo.Groupname, m_strGroupName.GetBuffer(0) ); strcpy ( userInfo.memo, m_strDescribe.GetBuffer(0) ); strcpy ( userInfo.name, m_strName.GetBuffer(0) ); strcpy ( userInfo.passWord, m_strPsw.GetBuffer(0) ); //保存用户 int bRet = SaveuserInfo(&userInfo); if ( bRet <= 0 ) { CString strMsg(_CS("User.AddUserFailed")); CString strError = GetSdkErrorInfo( bRet ); strMsg += strError; MessageBox(strMsg, _CS("OneClick.Prompt")); return; } MessageBox(_CS("AccountMSG.AddUserSuccess"), _CS("OneClick.Prompt")); OnOK(); }
bool SkeletonState::DecodeFisbone(ogg_packet* aPacket) { if (aPacket->bytes < static_cast<long>(FISBONE_MSG_FIELDS_OFFSET + 4)) { return false; } uint32_t offsetMsgField = LittleEndian::readUint32(aPacket->packet + FISBONE_MSG_FIELDS_OFFSET); if (aPacket->bytes < static_cast<long>(FISBONE_SERIALNO_OFFSET + 4)) { return false; } uint32_t serialno = LittleEndian::readUint32(aPacket->packet + FISBONE_SERIALNO_OFFSET); CheckedUint32 checked_fields_pos = CheckedUint32(FISBONE_MSG_FIELDS_OFFSET) + offsetMsgField; if (!checked_fields_pos.isValid() || aPacket->bytes < static_cast<int64_t>(checked_fields_pos.value())) { return false; } int64_t msgLength = aPacket->bytes - checked_fields_pos.value(); char* msgProbe = (char*)aPacket->packet + checked_fields_pos.value(); char* msgHead = msgProbe; nsAutoPtr<MessageField> field(new MessageField()); const static FieldPatternType kFieldTypeMaps[] = { {"Content-Type:", eContentType}, {"Role:", eRole}, {"Name:", eName}, {"Language:", eLanguage}, {"Title:", eTitle}, {"Display-hint:", eDisplayHint}, {"Altitude:", eAltitude}, {"TrackOrder:", eTrackOrder}, {"Track dependencies:", eTrackDependencies} }; bool isContentTypeParsed = false; while (msgLength > 1) { if (*msgProbe == '\r' && *(msgProbe+1) == '\n') { nsAutoCString strMsg(msgHead, msgProbe-msgHead); for (size_t i = 0; i < ArrayLength(kFieldTypeMaps); i++) { if (strMsg.Find(kFieldTypeMaps[i].mPatternToRecognize) != -1) { // The content of message header fields follows [RFC2822], and the // mandatory message field must be encoded in US-ASCII, others // must be be encoded in UTF-8. "Content-Type" must come first // for all of message header fields. // See http://svn.annodex.net/standards/draft-pfeiffer-oggskeleton-current.txt. if (i != 0 && !isContentTypeParsed) { return false; } if ((i == 0 && IsASCII(strMsg)) || (i != 0 && IsUTF8(strMsg))) { EMsgHeaderType eHeaderType = kFieldTypeMaps[i].mMsgHeaderType; if (!field->mValuesStore.Contains(eHeaderType)) { uint32_t nameLen = strlen(kFieldTypeMaps[i].mPatternToRecognize); field->mValuesStore.Put(eHeaderType, new nsCString(msgHead+nameLen, msgProbe-msgHead-nameLen)); } isContentTypeParsed = i==0 ? true : isContentTypeParsed; } break; } } msgProbe += 2; msgLength -= 2; msgHead = msgProbe; continue; } msgLength--; msgProbe++; }; if (!mMsgFieldStore.Contains(serialno)) { mMsgFieldStore.Put(serialno, field.forget()); } else { return false; } return true; }
static retCode setBootPkg(char *option, logical enable, void *cl) { uniCpy(&bootPkge.packageName[0], NumberOf(bootPkge.packageName), option); strMsg(bootInit, NumberOf(bootInit), "%s@init", option); return Ok; }
/* * Go evaluator main program */ int main(int argc, char **argv) { int narg; #ifdef HAVE_LOCALECONV setlocale(LC_ALL,""); /* set up locale */ #endif #ifdef LOCALEDIR bindtextdomain(PACKAGE,LOCALEDIR); textdomain(PACKAGE); #endif initLogfile((char *) "-"); initFileIo(); /* Set up special file handling */ strMsg(entryPoint, NumberOf(entryPoint), "lo.boot@__boot"); /* standard entry point */ if ((narg = getOptions(argc, argv)) < 0) { outMsg(logFile, _("usage: %s [-v] [-L log] [-g host:port] [-V] [-b boot:ver] [-m entry] [-r repo] [-d wd]" " [-h sizeK] [-s sizeK] [-d rootdir] args ...\n"), argv[0]); exit(1); } // Set up repository directory if (uniIsLit(repoDir, "")) { // overridden? char *dir = getenv("LO_DIR"); /* pick up the installation directory */ if (dir == NULL) dir = LODIR; /* Default installation path */ uniCpy(repoDir, NumberOf(repoDir), dir); } // set up working directory if (uniIsLit(loCWD, "")) { char cbuff[MAXPATHLEN]; char *cwd = getcwd(cbuff, NumberOf(cbuff)); /* compute current starting directory */ if (cwd == NULL) syserr("cant determine current directory"); else strMsg(loCWD, NumberOf(loCWD), "%s/", cwd); } if (loadManifest(repoDir) != Ok) { outMsg(logFile, "error in loading repository from %s", repoDir); exit(99); } /* IMPORTANT -- Keep the order of these set up calls */ initGlobal(initHeapSize); /* start up the global space */ initClass(); /* Initialize the class handlers */ initPrograms(); /* Initialize program handling */ initDict(); /* Start up the dictionaries */ install_escapes(); /* Initialize the escape table */ initFiles(); /* initialize file tables */ init_args(argv, argc, narg); /* Initialize the argument list */ init_time(); /* Initialize time stuff */ setupSignals(); #ifdef EXECTRACE if (traceCount) atexit(dumpInsCount); #endif bootstrap(entryPoint, bootPkg, bootVer); return EXIT_SUCCEED; /* exit the lo system cleanly */ }
int getOptions(int argc, char **argv) { int opt; extern char *optarg; extern int optind; splitFirstArg(argc, argv, &argc, &argv); for (; optCount < NumberOf(Options) && (opt = getopt(argc, argv, GNU_GETOPT_NOPERMUTE "m:D:d:gG:vVh:s:L:r:b:R:")) >= 0; optCount++) { Options[optCount].option = (codePoint) opt; /* store the option */ if (optarg != NULL) { strncpy(Options[optCount].value, optarg, NumberOf(Options[optCount].value)); } else Options[optCount].value[0] = '\0'; switch (opt) { case 'D': { /* turn on various debugging options */ char *c = optarg; while (*c) { switch (*c++) { case 'e': /* Escape call tracing */ #ifdef EXECTRACE traceCalls = True; continue; #else logMsg(logFile,"Escape tracing not enabled\n"); return -1; #endif case 'd': /* single step instruction tracing */ #ifdef EXECTRACE debugging = True; continue; #else logMsg(logFile,"Instruction-level debugging not enabled\n"); return -1; #endif case 'v': /* turn on verify tracing */ #ifdef VERIFYTRACE traceVerify = True; continue; #else logMsg(logFile,"code verification not enabled\n"); return -1; #endif case 'm': /* trace memory allocations */ #ifdef MEMTRACE if (traceMemory) stressMemory = True; else traceMemory = True; continue; #else logMsg(logFile,"memory tracing not enabled"); return -1; #endif case 'l': /* trace synch locks */ #ifdef LOCKTRACE traceLock = True; continue; #else logMsg(logFile,"sync tracing not enabled"); return -1; #endif case 'p': /* trace put-style operations */ #ifdef EXECTRACE tracePut = True; continue; #else logMsg(logFile,"put tracing not enabled"); return -1; #endif case 'G': /* Internal symbolic tracing */ #ifdef EXECTRACE SymbolDebug = True; interactive = False; continue; #else logMsg(logFile,"tracing not enabled"); return -1; #endif case 'g': /* Internal symbolic debugging */ SymbolDebug = True; interactive = True; continue; case 'I': #ifdef STATSTRACE #ifdef EXECTRACE traceCount = True; atexit(dumpInsCount); break; #endif #else logMsg(logFile,"instruction counting not enabled"); return -1; #endif case 'r': /* Trace resource mgt */ #ifdef RESOURCETRACE traceResource = True; #else logMsg(logFile,"Resource tracing not enabled\n"); return -1; #endif case '*': /* trace everything */ #ifdef ALLTRACE traceCalls = True; debugging = True; interactive = True; traceVerify = True; traceCount = True; traceMessage = True; if (traceMemory) stressMemory = True; else traceMemory = True; tracePut = True; /* term freeze */ traceResource = True; #else logMsg(logFile,"debugging not enabled\n"); return -1; #endif default:; } } break; } case 'g': { SymbolDebug = True; /* turn on symbolic debugging */ interactive = True; // Initially its also interactive break; } case 'G': { /* non-default debugging package */ strMsg(debugPkg, NumberOf(debugPkg), "%s", optarg); break; } case 'm': { /* modify the entry point */ uniCpy(entryPoint, NumberOf(entryPoint), optarg); break; } case 'r': { strMsg(repoDir, NumberOf(repoDir), "%s", optarg); break; } case 'd': { /* non-standard initial working directory */ strMsg(loCWD, NumberOf(loCWD), "%s", optarg); break; } case 'b': { parsePkgOpt(optarg, bootPkg, NumberOf(bootPkg), bootVer, NumberOf(bootVer)); break; } case 'R': { /* fix the random seed */ srand((unsigned int) atoi(optarg)); break; } case 'L': { char fn[MAX_MSG_LEN]; strncpy((char *) fn, optarg, NumberOf(fn)); if (initLogfile(fn) != Ok) { logMsg(logFile, "log file %s not found", optarg); return -1; } break; } case 'v': /* Display version ID */ outMsg(logFile, "%s", version); outMsg(logFile, "%s", copyRight); break; case 'V': /* Turn on (will be off) code verification */ enableVerify = (logical) !enableVerify; break; case 'h': /* set up heap size */ initHeapSize = atoi(optarg) * 1024; break; case 's': /* set up initial size of a thread */ initStackHeapSize = atoi(optarg) * 1024; break; default: break; /* ignore options we dont understand */ } } return optind; }
/*---------------------------------------------------------------------------------------------- Handle a change in a combo box. ----------------------------------------------------------------------------------------------*/ bool FmtGenDlg::OnComboChange(NMHDR * pnmh, long & lnRet) { AssertPtr(pnmh); // Do nothing if we're not handling a change in the based on style name combo. if (pnmh->idFrom != kctidFgCbBasedOn) { lnRet = 0; return true; } achar rgchaName[1024]; // Name in the combobox. Vector<achar> vch; achar * pszT; bool fKeepChange = true; // Get the name from the combobox. int index = ::SendMessage(m_hwndBasedOn, CB_GETCURSEL, 0, 0); int cch = ::SendMessage(m_hwndBasedOn, CB_GETLBTEXTLEN, index, (LPARAM)0); if (cch < 1024) pszT = rgchaName; else { vch.Resize(cch + 1); pszT = vch.Begin(); } cch = ::SendMessage(m_hwndBasedOn, CB_GETLBTEXT, index, (long)pszT); if (cch < 0) pszT = _T(""); // Trim leading and trailing space characters. StrApp strNewBasedOnName; StrUtil::TrimWhiteSpace(pszT, strNewBasedOnName); // Get the name of the style whose based on style is being changed. StrUni stuCurrStyleName(m_pafsd->GetNameOfSelectedStyle()); // Get the HVO of the new based on style. StrUni stuName; stuName.Assign(strNewBasedOnName); HVO hvoNewBasedOn = m_pafsd->GetHvoOfStyleNamed(stuName); // Check that the selected style will not be based on itself. if (stuCurrStyleName.Equals(strNewBasedOnName)) fKeepChange = false; else { int hvo = m_pafsd->GetBasedOnHvoOfStyle(hvoNewBasedOn); // Loop through the inheritance chain to make sure none of the based on // styles are the same as the currently selected style. while (hvo && fKeepChange) { if (stuCurrStyleName.Equals(m_pafsd->GetNameOfStyle(hvo))) fKeepChange = false; else hvo = m_pafsd->GetBasedOnHvoOfStyle(hvo); } } // If keeping the new based on style, then notify the styles dialog of its change. if (fKeepChange) { StyleInfo styi = m_pafsd->SelectedStyle(); m_pafsd->SetBasedOn(styi, hvoNewBasedOn); m_pafsd->BasedOnStyleChangeNotification(hvoNewBasedOn); LoadNextStyleCombobox(styi); SetNextStyleComboboxValue(styi); } else { StrApp strMsg(kstidAfsdSameBasedOnMsg); StrApp strMsgTitle(kstidStyles); // Raise a message alerting the user to his mistake. ::MessageBox(m_hwnd, strMsg.Chars(), strMsgTitle.Chars(), MB_OK | MB_ICONINFORMATION); // Return the combobox to its original value. strNewBasedOnName = m_pafsd->GetNameOfStyle(m_pafsd->SelectedStyle().m_hvoBasedOn); int index = ::SendMessage(m_hwndBasedOn, CB_FINDSTRINGEXACT, 0, (LPARAM)strNewBasedOnName.Chars()); ::SendMessage(m_hwndBasedOn, CB_SETCURSEL, index, 0); } lnRet = 0; return true; } //:> FmtGenDlg::OnComboChange.
ptrI errorString(heapPo H, ptrI code) { if (!isvar(code)) { if (code == eINSUFARG) return allocateCString(H, "Insufficiently instantiated argument"); else if (code == eINTNEEDD) return allocateCString(H, "Integer required"); else if (code == eNUMNEEDD) return allocateCString(H, "Number required"); else if (code == eVARNEEDD) return allocateCString(H, "Unbound variable required"); else if (code == eSPACE) return allocateCString(H, "Out of heap space"); else if (code == eUNIFY) return allocateCString(H, "Incomparible values in unification"); else if (code == eDIVZERO) return allocateCString(H, "Division by zero"); else if (code == eLSTNEEDD) return allocateCString(H, "List needed"); else if (code == eTPLNEEDD) return allocateCString(H, "Tuple needed"); else if (code == eSYMNEEDD) return allocateCString(H, "Symbol needed"); else if (code == eSTRNEEDD) return allocateCString(H, "String required"); else if (code == eCHRNEEDD) return allocateCString(H, "Character required"); else if (code == eINVAL) return allocateCString(H, "invalid argument"); else if (code == eNOPERM) return allocateCString(H, "permission denied"); else if (code == eNOFILE) return allocateCString(H, "file not found"); else if (code == eNOTDIR) return allocateCString(H, "not a directory"); else if (code == eCFGERR) return allocateCString(H, "configuration problem"); else if (code == eEOF) return allocateCString(H, "read past end-of-file"); else if (code == eIOERROR) return allocateCString(H, "error on i/o"); else if (code == eABORT) return allocateCString(H, "process aborted"); else if (code == eNOTFND) return allocateCString(H, "not found"); else if (code == eCODE) return allocateCString(H, "undefined program"); else if (code == eFAIL) return allocateCString(H, "unexpected failure"); else if (code == eHANDLE) return allocateCString(H, "not a valid handle"); else if (code == eINVCODE) return allocateCString(H, "incorrect code type"); else if (code == eASSIGN) return allocateCString(H, "assignment not allowed"); else if (code == eDEAD) return allocateCString(H, "deadlock detected"); else if (code == eSYSTEM) return allocateCString(H, "system overflow"); else if (code == eDUPLICATE) return allocateCString(H, "duplicate request"); else if (code == eNOIMPL) return allocateCString(H, "feature not implemented"); else if (code == eNOTENUF) return allocateCString(H, "insufficient arguments given"); else if (code == eCONNECT) return allocateCString(H, "cannot connect to host"); else if (code == eINTRUPT) return allocateCString(H, "interrupted"); else { char buf[MAX_MSG_LEN]; strMsg(buf, NumberOf(buf), "Unknown error code: %w", &code); return allocateString(H, buf, uniStrLen(buf)); } } else { char buf[MAX_MSG_LEN]; strMsg(buf, NumberOf(buf), "Invalid error code: %w", &code); return allocateString(H, buf, uniStrLen(buf)); } }
void CCueSheet::CreateSheet() { LTRACE2( _T( "CCDexView::OnToolsGeneratecuesheet " ) ); m_strCueSheet = _W( "" ); CDInfo& cdInfo = m_pDoc->GetCDInfo(); DWORD cdID = cdInfo.GetDiscID(); CUString cueSheetName; cueSheetName.Format( _W( "%08X.cue" ), cdID ); CUString strTmp; if (! cdInfo.GetGenre().IsEmpty()) { strTmp.Format( _W("REM GENRE \"%s\"\n"), (LPCWSTR)cdInfo.GetGenre() ); m_strCueSheet += strTmp; } if (! cdInfo.GetYear().IsEmpty()) { strTmp.Format( _W("REM DATE %s\n"), (LPCWSTR)cdInfo.GetYear() ); m_strCueSheet += strTmp; } strTmp.Format( _W("REM DISCID %08lx\n"), (LPCWSTR)cdInfo.GetDiscID() ); m_strCueSheet += strTmp; strTmp.Format( _W("REM VOLID %lX\n"), (LPCWSTR)cdInfo.GetVolID() ); m_strCueSheet += strTmp; strTmp.Format( _W("REM CDDBCAT %s\n"), (LPCWSTR)cdInfo.GetCDDBCat() ); m_strCueSheet += strTmp; strTmp.Format( _W("REM COMMENT \"CDex %s\"\n"), (LPCWSTR)g_config.GetVersion() ); m_strCueSheet += strTmp; m_strCueSheet += _W("REM\n"); if ( m_addISRC.GetCheck() ) { strTmp.Format( _W("CATALOG %s\n"), (LPCWSTR)cdInfo.GetMCN() ); m_strCueSheet += strTmp; } strTmp.Format( _W("PERFORMER \"%s\"\n"), (LPCWSTR)cdInfo.GetArtist()); m_strCueSheet += strTmp; strTmp.Format( _W("TITLE \"%s\"\n"), (LPCWSTR)cdInfo.GetTitle() ); m_strCueSheet += strTmp; m_strCueSheet += _W("FILE \"range.wav\" WAVE\n" ); int count = 1; int offset = 0; // dlg.GetFirstTrack() == 0 ? cdInfo.GetStartSector(cdInfo.GetTrack( 0 )) : 0; for (int i = 0; i < cdInfo.GetNumTracks(); ++i, ++count) { strTmp.Format( _W(" TRACK %02d AUDIO\n"), count ); m_strCueSheet += strTmp; strTmp.Format( _W(" TITLE \"%s\"\n"), (LPCWSTR)cdInfo.GetTrackName( i ) ); m_strCueSheet += strTmp; if (g_config.GetSplitTrackName()) { strTmp.Format( _W(" PERFORMER \"%s\"\n"), (LPCWSTR)cdInfo.GetArtist()); m_strCueSheet += strTmp; } else { strTmp.Format( _W(" PERFORMER \"%s\"\n"), (LPCWSTR)cdInfo.GetArtist()); m_strCueSheet += strTmp; } if ( m_addISRC.GetCheck() ) { strTmp.Format( _W(" ISRC %s\n"), (LPCWSTR)cdInfo.GetISRC( i ) ); m_strCueSheet += strTmp; } if ( m_checkPreGaps.GetCheck() ) { int dwGapSize = cdInfo.GetGap( i ); // Calculate sectors to time int nF= (int)( dwGapSize % 75 ); int nS= (int)( (dwGapSize / 75 ) %60 ); int nM= (int)( (dwGapSize / 75 ) /60 ); strTmp.Format( _W(" PREGAP %02d:%02d:%02d\n"), nM, nS, nF ); m_strCueSheet += strTmp; } DWORD dwStart = offset + cdInfo.GetStartSector( cdInfo.GetTrack( i ) ) /*- dlg.GetFirstSector() */; // Calculate sectors to time int nF= (int)( dwStart % 75 ); int nS= (int)( (dwStart / 75 ) %60 ); int nM= (int)( (dwStart / 75 ) /60 ); strTmp.Format( _W(" INDEX 01 %02d:%02d:%02d\n"), nM, nS, nF ); m_strCueSheet += strTmp; } CUString strMsg( m_strCueSheet ); strMsg.Replace( _W( "\n" ), _W( "\r\n" ) ); CUStringConvert strCnv; m_editCueSheet.SetWindowText( strCnv.ToT( strMsg ) ); }
/*---------------------------------------------------------------------------------------------- Load the data needed to display this view. In this case, we need to load the class, owner (so we can tell whether it is a subitem), the title, and create date. If all of these are already in the cache, don't reload it. @param pvwenv Pointer to the view environment. @param hvo The id of the object we are displaying. @param frag Identifies the part of the view we are currently displaying. @return HRESULT indicating success (S_OK), or failure (E_FAIL). ----------------------------------------------------------------------------------------------*/ STDMETHODIMP CleRecVc::LoadDataFor(IVwEnv * pvwenv, HVO hvo, int frag) { BEGIN_COM_METHOD; ChkComArgPtr(pvwenv); Assert(false); // TODO: rework StrUni stuSql; ISilDataAccessPtr qsda; CheckHr(pvwenv->get_DataAccess(&qsda)); bool fLoaded = false; int clid; CheckHr(qsda->get_IntProp(hvo, kflidCmObject_Class, &clid)); if (clid) { HVO hvoOwn; CheckHr(qsda->get_ObjectProp(hvo, kflidCmObject_Owner, &hvoOwn)); if (hvoOwn) { int64 tim; // REVIEW KenZ(RandyR) Whey are DN flids in this app? CheckHr(qsda->get_TimeProp(hvo, kflidRnGenericRec_DateCreated, &tim)); if (tim) { ITsStringPtr qtss; CheckHr(qsda->get_StringProp(hvo, kflidRnGenericRec_Title, &qtss)); if (qtss) { int cch; CheckHr(qtss->get_Length(&cch)); if (cch) fLoaded = true; } } } } if (!fLoaded) { // If any field is missing from the cache, load everything. IDbColSpecPtr qdcs; IVwOleDbDaPtr qda; CheckHr(qsda->QueryInterface(IID_IVwOleDbDa, (void**)&qda)); stuSql.Format(L"select id, Class$, Owner$, DateCreated, Title, Title_Fmt " L"from RnGenericRec_ " L"where id = %d", hvo); qdcs.CreateInstance(CLSID_DbColSpec); CheckHr(qdcs->Push(koctBaseId, 0, 0, 0)); CheckHr(qdcs->Push(koctInt, 1, kflidCmObject_Class, 0)); CheckHr(qdcs->Push(koctObj, 1, kflidCmObject_Owner, 0)); // REVIEW KenZ(RandyR) Whey are DN flids in this app? CheckHr(qdcs->Push(koctTime, 1, kflidRnGenericRec_DateCreated, 0)); CheckHr(qdcs->Push(koctString, 1, kflidRnGenericRec_Title, 0)); CheckHr(qdcs->Push(koctFmt, 1, kflidRnGenericRec_Title, 0)); AfMainWnd * pafw = AfApp::Papp()->GetCurMainWnd(); AssertPtr(pafw); AfStatusBar * pstbr = pafw->GetStatusBarWnd(); AssertPtr(pstbr); bool fProgBar = pstbr->IsProgressBarActive(); if (!fProgBar) { StrApp strMsg(kstidStBar_LoadingData); pstbr->StartProgressBar(strMsg.Chars(), 0, 70, 1); } // Execute the query and store results in the cache. CheckHr(qda->Load(stuSql.Bstr(), qdcs, hvo, 0, pstbr, NULL)); if (!fProgBar) pstbr->EndProgressBar(); } return S_OK; END_COM_METHOD(g_fact2, IID_IVwViewConstructor) }
/*---------------------------------------------------------------------------------------------- Check to see if the edit box has valid data. if so return true. If not then put up a message to the user, then return false. ----------------------------------------------------------------------------------------------*/ bool CleDeFeString::IsOkToClose(bool fWarn) { CleMainWnd * pcmw = dynamic_cast<CleMainWnd *>(m_qadsc->MainWindow()); Assert(pcmw); IVwSelectionPtr qvwsel; CheckHr(m_qrootb->get_Selection(&qvwsel)); if (qvwsel) { ComBool fOk; CheckHr(qvwsel->Commit(&fOk)); } PossListInfoPtr qpli = pcmw->GetPossListInfoPtr(); int ipss = qpli->GetIndexFromId(m_hvoObj); StrUni stuNew; const OLECHAR * prgwch; int cch; ITsStringPtr qtss; CustViewDaPtr qcvd; GetDataAccess(&qcvd); AssertPtr(qcvd); int ws = m_qsvc->WritingSystems()[0]; CheckHr(qcvd->get_MultiStringAlt(m_hvoObj, m_flid, ws, &qtss)); Assert(qtss); qtss->LockText(&prgwch, &cch); qtss->UnlockText(prgwch); // Trim leading and trailing space characters. UnicodeString ust(prgwch, cch); ust.trim(); stuNew.Assign(ust.getBuffer(), ust.length()); // Obtain pointer to IOleDbEncap interface. IOleDbEncapPtr qode; IOleDbCommandPtr qodc; StrUni stuSql; ComBool fIsNull; ComBool fMoreRows; AssertPtr(m_qadsc->MainWindow()); AfLpInfo * plpi = m_qadsc->MainWindow()->GetLpInfo(); AssertPtr(plpi); AfDbInfo * pdbi = plpi->GetDbInfo(); AssertPtr(pdbi); pdbi->GetDbAccess(&qode); AssertPtr(qode); CheckHr(qode->CreateCommand(&qodc)); int cpii = qpli->GetCount(); if ((m_flid == kflidCmPossibility_Name) || (m_flid == kflidCmPossibility_Abbreviation)) { // Make sure it does not have a ":" or a " - " in the string int ich = stuNew.FindStr(L":"); StrUni stuTmp; bool fFixed = false; while (ich > 0) { stuNew.Replace(ich,ich + 1,"-"); fFixed = true; ich = stuNew.FindStr(L":"); } ich = stuNew.FindStr(L" - "); while (ich > 0) { stuNew.Replace(ich,ich + 3,"-"); fFixed = true; ich = stuNew.FindStr(L" - "); } if (fFixed) { if (fWarn) { ITsStrFactoryPtr qtsf; qtsf.CreateInstance(CLSID_TsStrFactory); qtsf->MakeStringRgch(stuNew.Chars(), stuNew.Length(), pcmw->UserWs(), &qtss); CheckHr(qcvd->SetMultiStringAlt(m_hvoObj, m_flid, ws, qtss)); CheckHr(qcvd->PropChanged(NULL, kpctNotifyAll, m_hvoObj, m_flid, 0, 1, 1)); StrApp strMsg(kstidFixedStr); StrApp strTitle(kstidFixedStrTitle); ::MessageBox(m_hwnd, strMsg.Chars(), strTitle.Chars(), MB_OK | MB_ICONINFORMATION); } return false; } } if (qpli->GetAllowDup()) return true; ILgWritingSystemFactoryPtr qwsf; pdbi->GetLgWritingSystemFactory(&qwsf); AssertPtr(qwsf); switch (m_flid) { case kflidCmPossibility_Name: { for (int ipii = 0; ipii < cpii; ipii++) { if (ipii == ipss) continue; PossItemInfo * ppii = qpli->GetPssFromIndex(ipii); AssertPtr(ppii); StrUni stu; ppii->GetName(stu, kpntName); if (stu == stuNew) { stuSql.Format(L"select ws from CmPossibility_Name " L"where obj = %d and ws = %d", ppii->GetPssId(), ws); CheckHr(qode->CreateCommand(&qodc)); CheckHr(qodc->ExecCommand(stuSql.Bstr(), knSqlStmtSelectWithOneRowset)); CheckHr(qodc->GetRowset(0)); CheckHr(qodc->NextRow(&fMoreRows)); if (fMoreRows) { if (fWarn) { // this name already exists IWritingSystemPtr qws; CheckHr(qwsf->get_EngineOrNull(ws, &qws)); AssertPtr(qws); SmartBstr sbstr; qws->get_Name(ws, &sbstr); StrUni stu(kstidDupItemName); StrUni stuMsg; stuMsg.Format(stu,sbstr.Chars()); StrApp str(stuMsg); StrApp strTitle(kstidDupItemTitle); ::MessageBox(m_hwnd, str.Chars(), strTitle.Chars(), MB_OK | MB_ICONINFORMATION); } return false; } } } break; } case kflidCmPossibility_Abbreviation: { for (int ipii = 0; ipii < cpii; ipii++) { if (ipii == ipss) continue; PossItemInfo * ppii = qpli->GetPssFromIndex(ipii); AssertPtr(ppii); StrUni stu; ppii->GetName(stu, kpntAbbreviation); if (stu == stuNew) { stuSql.Format(L"select ws from CmPossibility_Abbreviation " L"where obj = %d and ws = %d", ppii->GetPssId(), ws); CheckHr(qode->CreateCommand(&qodc)); CheckHr(qodc->ExecCommand(stuSql.Bstr(), knSqlStmtSelectWithOneRowset)); CheckHr(qodc->GetRowset(0)); CheckHr(qodc->NextRow(&fMoreRows)); if (fMoreRows) { if (fWarn) { // this abbreviation already exists IWritingSystemPtr qws; CheckHr(qwsf->get_EngineOrNull(ws, &qws)); AssertPtr(qws); SmartBstr sbstr; qws->get_Name(ws, &sbstr); StrUni stu(kstidDupItemAbbr); StrUni stuMsg; stuMsg.Format(stu,sbstr.Chars()); StrApp str(stuMsg); StrApp strTitle(kstidDupItemTitle); ::MessageBox(m_hwnd, str.Chars(), strTitle.Chars(), MB_OK | MB_ICONINFORMATION); } return false; } } } break; } } return true; }