本文整理匯總了C++中CFormat函數的典型用法代碼示例。如果您正苦於以下問題:C++ CFormat函數的具體用法?C++ CFormat怎麽用?C++ CFormat使用的例子?那麽, 這裏精選的函數代碼示例或許可以為您提供幫助。
在下文中一共展示了CFormat函數的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的C++代碼示例。
示例1: AddDebugLogLineN
// Full debug output of all data
void CCorruptionBlackBox::DumpAll()
{
#ifdef __DEBUG__
AddDebugLogLineN(logPartFile, wxT("CBB Dump Records"));
std::map<uint16, CRecordList>::iterator it = m_Records.begin();
for (; it != m_Records.end(); ++it) {
uint16 block = it->first;
CRecordList & list = it->second;
for (CRecordList::iterator it2 = list.begin(); it2 != list.end(); ++it2) {
AddDebugLogLineN(logPartFile, CFormat(wxT("CBBD %6d %.16s %10d - %10d"))
% block % Uint32toStringIP(it2->m_dwIP) % it2->m_nStartPos % it2->m_nEndPos);
}
}
if (!m_goodClients.empty()) {
AddDebugLogLineN(logPartFile, wxT("CBB Dump good Clients"));
CCBBClientMap::iterator it3 = m_goodClients.begin();
for (; it3 != m_goodClients.end(); ++it3) {
AddDebugLogLineN(logPartFile, CFormat(wxT("CBBD %.16s good %10d"))
% Uint32toStringIP(it3->first) % it3->second.m_downloaded);
}
}
if (!m_badClients.empty()) {
AddDebugLogLineN(logPartFile, wxT("CBB Dump bad Clients"));
CCBBClientMap::iterator it3 = m_badClients.begin();
for (; it3 != m_badClients.end(); ++it3) {
AddDebugLogLineN(logPartFile, CFormat(wxT("CBBD %.16s bad %10d"))
% Uint32toStringIP(it3->first) % it3->second.m_downloaded);
}
}
#endif
}
示例2: ShowGlobalOptions
void CMUSHclientApp::ShowGlobalOptions (CMUSHclientDoc * pDoc)
{
int i;
for (i = 0; GlobalOptionsTable [i].pName; i++)
{
const char * p = (const char *) this + GlobalOptionsTable [i].iOffset;
const int Value = * (const long *) p;
pDoc->Note (CFormat ("%35s = %ld",
(LPCTSTR) GlobalOptionsTable [i].pName,
Value));
};
for (i = 0; AlphaGlobalOptionsTable [i].pName; i++)
{
const char * p = (const char *) this + AlphaGlobalOptionsTable [i].iOffset;
CString strValue = * (CString *) p;
pDoc->Note (CFormat ("%35s = %s",
(LPCTSTR) AlphaGlobalOptionsTable [i].pName,
(LPCTSTR) strValue));
};
} // end of CMUSHclientApp::ShowGlobalOptions
示例3: AddLogLineC
bool CDownloadQueue::IsFileExisting( const CMD4Hash& fileid ) const
{
if (CKnownFile* file = theApp->sharedfiles->GetFileByID(fileid)) {
if (file->IsPartFile()) {
AddLogLineC(CFormat( _("You are already trying to download the file '%s'") ) % file->GetFileName());
} else {
// Check if the file exists, since otherwise the user is forced to
// manually reload the shares to download a file again.
CPath fullpath = file->GetFilePath().JoinPaths(file->GetFileName());
if (!fullpath.FileExists()) {
// The file is no longer available, unshare it
theApp->sharedfiles->RemoveFile(file);
return false;
}
AddLogLineC(CFormat( _("You already have the file '%s'") ) % file->GetFileName());
}
return true;
} else if ((file = GetFileByID(fileid))) {
AddLogLineC(CFormat( _("You are already trying to download the file %s") ) % file->GetFileName());
return true;
}
return false;
}
示例4: CFormat
wxString CStatTreeItemRatio::GetString() const
{
wxString ret;
double v1 = m_counter1->GetValue();
double v2 = m_counter2->GetValue();
if (v1 > 0 && v2 > 0) {
if (v2 < v1) {
ret = CFormat(wxT("%.2f : 1")) % (v1 / v2);
} else {
ret = CFormat(wxT("1 : %.2f")) % (v2 / v1);
}
if (m_totalfunc1 && m_totalfunc2) {
double t1 = m_totalfunc1() + v1;
double t2 = m_totalfunc2() + v2;
if (t2 < t1) {
ret += CFormat(wxT(" (%.2f : 1)")) % (t1 / t2);
} else {
ret += CFormat(wxT(" (1 : %.2f)")) % (t2 / t1);
}
}
} else {
ret = _("Not available");
}
return ret;
}
示例5: AddLogLineC
void CServerList::AutoUpdate()
{
uint8 url_count = theApp->glob_prefs->adresses_list.GetCount();
if (!url_count) {
AddLogLineC(_("No server list address entry in 'addresses.dat' found. Please paste a valid server list address into this file in order to auto-update your server list"));
return;
}
// Do current URL. Callback function will take care of the others.
while ( current_url_index < url_count ) {
wxString URI = theApp->glob_prefs->adresses_list[current_url_index];
// We use wxURL to validate the URI
if ( wxURL( URI ).GetError() == wxURL_NOERR ) {
// Ok, got a valid URI
m_URLUpdate = URI;
wxString strTempFilename =
theApp->ConfigDir + wxT("server_auto.met");
AddLogLineC(CFormat(
_("Start downloading server list from %s")) % URI);
CHTTPDownloadThread *downloader = new CHTTPDownloadThread(
URI, strTempFilename, theApp->ConfigDir + wxT("server.met"), HTTP_ServerMetAuto, false, false);
downloader->Create();
downloader->Run();
return;
} else {
AddLogLineC(CFormat(
_("WARNING: invalid URL specified for auto-updating of servers: %s") ) % URI);
}
current_url_index++;
}
AddLogLineC(_("No valid server.met auto-download url on addresses.dat"));
}
示例6: CFormat
void CECTag::DebugPrint(int level, bool print_empty) const
{
if (m_dataLen || print_empty) {
wxString space;
for (int i = level; i--;) space += wxT(" ");
wxString s1 = CFormat(wxT("%s%s %d = ")) % space % GetDebugNameECTagNames(m_tagName) % m_dataLen;
wxString s2;
switch (m_tagName) {
case EC_TAG_DETAIL_LEVEL:
s2 = GetDebugNameEC_DETAIL_LEVEL(GetInt()); break;
case EC_TAG_SEARCH_TYPE:
s2 = GetDebugNameEC_SEARCH_TYPE(GetInt()); break;
case EC_TAG_STAT_VALUE_TYPE:
s2 = GetDebugNameEC_STATTREE_NODE_VALUE_TYPE(GetInt()); break;
default:
switch (m_dataType) {
case EC_TAGTYPE_UINT8:
case EC_TAGTYPE_UINT16:
case EC_TAGTYPE_UINT32:
case EC_TAGTYPE_UINT64:
s2 = CFormat(wxT("%d")) % GetInt(); break;
case EC_TAGTYPE_STRING:
s2 = GetStringData(); break;
case EC_TAGTYPE_DOUBLE:
s2 = CFormat(wxT("%.1f")) % GetDoubleData(); break;
case EC_TAGTYPE_HASH16:
s2 = GetMD4Data().Encode(); break;
case EC_TAGTYPE_UINT128:
// Using any non-inline function from UInt128.h would break linkage
// of remote apps otherwise not using CUInt128. So just fall through
// and display the value as a byte-stream. Since the value is sent
// big-endian on the network, the visual result is correct, except
// for the intervening spaces...
//s2 = GetInt128Data().ToHexString(); break;
case EC_TAGTYPE_CUSTOM:
if (m_dataLen == 0) {
s2 = wxT("empty");
} else {
// Make a hex dump (limited to maxOutput)
const uint32 maxOutput = 50;
for (uint32 i = 0; i < m_dataLen; i++) {
if (i == maxOutput) {
s2 += wxT("...");
break;
}
s2 += CFormat(wxT("%02X ")) % (unsigned char) m_tagData[i];
}
}
break;
default:
s2 = GetDebugNameECTagTypes(m_dataType);
}
}
DoECLogLine(s1 + s2);
}
for (TagList::const_iterator it = m_tagList.begin(); it != m_tagList.end(); ++it) {
it->DebugPrint(level + 1, true);
}
}
示例7: sqlite3_close
void CMUSHclientApp::SaveGlobalsToDatabase (void)
{
// close and re-open database, in case they somehow lost connection to it
if (db)
sqlite3_close(db);
int db_rc = sqlite3_open(m_PreferencesDatabaseName.c_str (), &db);
if( db_rc )
{
::AfxMessageBox ((LPCTSTR) CFormat ("Can't open global preferences database at: %s"
"\r\n(Error was: \"%s\")"
"\r\nCheck you have write-access to that file.",
m_PreferencesDatabaseName.c_str (),
sqlite3_errmsg(db)));
sqlite3_close(db);
db = NULL;
return;
}
db_rc = db_execute ("BEGIN TRANSACTION", true);
int i;
for (i = 0; GlobalOptionsTable [i].pName; i++)
{
const char * p = (const char *) this + GlobalOptionsTable [i].iOffset;
const int Value = * (const long *) p;
db_rc = db_execute ((LPCTSTR) CFormat ("UPDATE prefs SET value = %i WHERE name = '%s'",
Value, GlobalOptionsTable [i].pName), true);
if (db_rc != SQLITE_OK)
break;
};
if (db_rc == SQLITE_OK)
for (i = 0; AlphaGlobalOptionsTable [i].pName; i++)
{
const char * p = (const char *) this + AlphaGlobalOptionsTable [i].iOffset;
CString strValue = * (CString *) p;
strValue.Replace ("'", "''"); // fix up quotes
db_rc = db_execute ((LPCTSTR) CFormat ("UPDATE prefs SET value = '%s' WHERE name = '%s'",
(LPCTSTR) strValue, AlphaGlobalOptionsTable [i].pName), true);
if (db_rc != SQLITE_OK)
break;
};
db_execute ("COMMIT", true);
} // end of CMUSHclientApp::SaveGlobalsToDatabase
示例8: SaveConfigFile
void CaMuleExternalConnector::ConnectAndRun(const wxString &ProgName, const wxString& ProgVersion)
{
if (m_NeedsConfigSave) {
SaveConfigFile();
return;
}
#ifdef SVNDATE
Show(CFormat(_("This is %s %s %s\n")) % wxString::FromAscii(m_appname) % wxT(VERSION) % wxT(SVNDATE));
#else
Show(CFormat(_("This is %s %s\n")) % wxString::FromAscii(m_appname) % wxT(VERSION));
#endif
// HostName, Port and Password
if ( m_password.IsEmpty() ) {
m_password = GetPassword(true);
// MD5 hash for an empty string, according to rfc1321.
if (m_password.Encode() == wxT("D41D8CD98F00B204E9800998ECF8427E")) {
m_password.Clear();
}
}
if (!m_password.IsEmpty()) {
// Create the socket
Show(_("\nCreating client...\n"));
m_ECClient = new CRemoteConnect(NULL);
m_ECClient->SetCapabilities(m_ZLIB, true, false); // ZLIB, UTF8 numbers, notification
// ConnectToCore is blocking since m_ECClient was initialized with NULL
if (!m_ECClient->ConnectToCore(m_host, m_port, wxT("foobar"), m_password.Encode(), ProgName, ProgVersion)) {
// no connection => close gracefully
if (!m_ECClient->GetServerReply().IsEmpty()) {
Show(CFormat(wxT("%s\n")) % m_ECClient->GetServerReply());
}
Show(CFormat(_("Connection Failed. Unable to connect to %s:%d\n")) % m_host % m_port);
} else {
// Authenticate ourselves
// ConnectToCore() already authenticated for us.
//m_ECClient->ConnectionEstablished();
Show(m_ECClient->GetServerReply()+wxT("\n"));
if (m_ECClient->IsSocketConnected()) {
if (m_interactive) {
ShowGreet();
}
Pre_Shell();
TextShell(ProgName);
Post_Shell();
if (m_interactive) {
Show(CFormat(_("\nOk, exiting %s...\n")) % ProgName);
}
}
}
m_ECClient->DestroySocket();
} else {
Show(_("Cannot connect with an empty password.\nYou must specify a password either in config file\nor on command-line, or enter one when asked.\n\nExiting...\n"));
}
}
示例9: wxASSERT
bool CAICHHashSet::CreatePartRecoveryData(uint64 nPartStartPos, CFileDataIO* fileDataOut, bool bDbgDontLoad)
{
wxASSERT( m_pOwner );
if (m_pOwner->IsPartFile() || m_eStatus != AICH_HASHSETCOMPLETE) {
wxFAIL;
return false;
}
if (m_pHashTree.m_nDataSize <= EMBLOCKSIZE) {
wxFAIL;
return false;
}
if (!bDbgDontLoad) {
if (!LoadHashSet()) {
AddDebugLogLineM(false, logSHAHashSet,
CFormat(wxT("Created RecoveryData error: failed to load hashset. File: %s")) % m_pOwner->GetFileName());
SetStatus(AICH_ERROR);
return false;
}
}
bool bResult;
uint8 nLevel = 0;
uint32 nPartSize = min<uint64>(PARTSIZE, m_pOwner->GetFileSize()-nPartStartPos);
m_pHashTree.FindHash(nPartStartPos, nPartSize,&nLevel);
uint16 nHashsToWrite = (nLevel-1) + nPartSize/EMBLOCKSIZE + ((nPartSize % EMBLOCKSIZE != 0 )? 1:0);
const bool bUse32BitIdentifier = m_pOwner->IsLargeFile();
if (bUse32BitIdentifier) {
fileDataOut->WriteUInt16(0); // no 16bit hashs to write
}
fileDataOut->WriteUInt16(nHashsToWrite);
uint64 nCheckFilePos = fileDataOut->GetPosition();
if (m_pHashTree.CreatePartRecoveryData(nPartStartPos, nPartSize, fileDataOut, 0, bUse32BitIdentifier)) {
if (nHashsToWrite*(HASHSIZE+(bUse32BitIdentifier? 4u:2u)) != fileDataOut->GetPosition() - nCheckFilePos) {
wxFAIL;
AddDebugLogLineM( false, logSHAHashSet,
CFormat(wxT("Created RecoveryData has wrong length. File: %s")) % m_pOwner->GetFileName() );
bResult = false;
SetStatus(AICH_ERROR);
} else {
bResult = true;
}
} else {
AddDebugLogLineM(false, logSHAHashSet,
CFormat(wxT("Failed to create RecoveryData for '%s'")) % m_pOwner->GetFileName());
bResult = false;
SetStatus(AICH_ERROR);
}
if (!bUse32BitIdentifier) {
fileDataOut->WriteUInt16(0); // no 32bit hashs to write
}
if (!bDbgDontLoad) {
FreeHashSet();
}
return bResult;
}
示例10: CFormat
wxString CStatTreeItemMaxConnLimitReached::GetDisplayString() const
{
if (m_count) {
return CFormat(wxGetTranslation(m_label)) %
(CFormat(wxT("%i : %s %s")) % m_count % m_time.FormatISODate() % m_time.FormatISOTime());
} else {
return CFormat(wxGetTranslation(m_label)) % _("Never");
}
}
示例11: inet_ntoa
void CChatListDlg::OnEdit()
{
// iterate through list
for (int nItem = -1;
(nItem = m_ctlChatList.GetNextItem(nItem, LVNI_SELECTED)) != -1;)
{
long iChatID = m_ctlChatList.GetItemData (nItem);
CChatSocket * pSock = m_pDoc->GetChatSocket (iChatID);
if (!pSock) // must have gone
continue;
// edit it here
CChatDetailsDlg dlg;
dlg.m_strRemoteUserName = pSock->m_strRemoteUserName ;
dlg.m_strGroup = pSock->m_strGroup ;
dlg.m_strActualIPaddress = inet_ntoa (pSock->m_ServerAddr.sin_addr);
dlg.m_strAllegedAddress = pSock->m_strAllegedAddress ;
dlg.m_strAllegedPort = CFormat ("%d", pSock->m_iAllegedPort);
dlg.m_strChatID = CFormat ("%ld", pSock->m_iChatID);
dlg.m_strRemoteVersion = pSock->m_strRemoteVersion ;
dlg.m_bIncoming = pSock->m_bIncoming ;
dlg.m_bCanSnoop = pSock->m_bCanSnoop ;
dlg.m_bCanSendFiles = pSock->m_bCanSendFiles ;
dlg.m_bPrivate = pSock->m_bPrivate ;
dlg.m_bIgnore = pSock->m_bIgnore ;
dlg.m_bCanSendCommands = pSock->m_bCanSendCommands ;
if (dlg.DoModal () != IDOK)
continue;
// check still exists :)
pSock = m_pDoc->GetChatSocket (iChatID);
if (!pSock)
continue; // must have gone while we were thinking
// we do it this way so they get the message about the option changing
m_pDoc->SetChatOption (iChatID, "group", dlg.m_strGroup);
// boolean options
m_pDoc->SetChatOption (iChatID, "served", dlg.m_bIncoming ? "1" : "0");
m_pDoc->SetChatOption (iChatID, "can_snoop", dlg.m_bCanSnoop ? "1" : "0");
m_pDoc->SetChatOption (iChatID, "can_send_files", dlg.m_bCanSendFiles ? "1" : "0");
m_pDoc->SetChatOption (iChatID, "private", dlg.m_bPrivate ? "1" : "0");
m_pDoc->SetChatOption (iChatID, "ignore", dlg.m_bIgnore ? "1" : "0");
m_pDoc->SetChatOption (iChatID, "can_send_commands", dlg.m_bCanSendCommands ? "1" : "0");
} // end of loop
}
示例12: CFormat
void CECTag::DebugPrint(int level, bool print_empty) const
{
if (m_dataLen || print_empty) {
wxString space;
for (int i = level; i--;) space += wxT(" ");
wxString s1 = CFormat(wxT("%s%s %d = ")) % space % GetDebugNameECTagNames(m_tagName) % m_dataLen;
wxString s2;
switch (m_tagName) {
case EC_TAG_DETAIL_LEVEL:
s2 = GetDebugNameEC_DETAIL_LEVEL(GetInt()); break;
case EC_TAG_SEARCH_TYPE:
s2 = GetDebugNameEC_SEARCH_TYPE(GetInt()); break;
case EC_TAG_STAT_VALUE_TYPE:
s2 = GetDebugNameEC_STATTREE_NODE_VALUE_TYPE(GetInt()); break;
default:
switch (m_dataType) {
case EC_TAGTYPE_UINT8:
case EC_TAGTYPE_UINT16:
case EC_TAGTYPE_UINT32:
case EC_TAGTYPE_UINT64:
s2 = CFormat(wxT("%d")) % GetInt(); break;
case EC_TAGTYPE_STRING:
s2 = GetStringData(); break;
case EC_TAGTYPE_DOUBLE:
s2 = CFormat(wxT("%.1f")) % GetDoubleData(); break;
case EC_TAGTYPE_HASH16:
s2 = GetMD4Data().Encode(); break;
case EC_TAGTYPE_CUSTOM:
if (m_dataLen == 0) {
s2 = wxT("empty");
} else {
// Make a hex dump (limited to maxOutput)
const uint32 maxOutput = 50;
for (uint32 i = 0; i < m_dataLen; i++) {
if (i == maxOutput) {
s2 += wxT("...");
break;
}
s2 += CFormat(wxT("%02X ")) % (unsigned char) m_tagData[i];
}
}
break;
default:
s2 = GetDebugNameECTagTypes(m_dataType);
}
}
DoECLogLine(s1 + s2);
}
for (TagList::const_iterator it = m_tagList.begin(); it != m_tagList.end(); ++it) {
it->DebugPrint(level + 1, true);
}
}
示例13: AddDebugLogLineN
bool CKnownFileList::Append(CKnownFile *Record, bool afterHashing)
{
if (Record->GetFileSize() > 0) {
const CMD4Hash& tkey = Record->GetFileHash();
CKnownFileMap::iterator it = m_knownFileMap.find(tkey);
if (it == m_knownFileMap.end()) {
m_knownFileMap[tkey] = Record;
return true;
} else {
CKnownFile *existing = it->second;
if (KnownFileMatches(Record, existing->GetFileName(), existing->GetLastChangeDatetime(), existing->GetFileSize())) {
// The file is already on the list, ignore it.
AddDebugLogLineN(logKnownFiles, CFormat(wxT("%s is already on the list")) % Record->GetFileName().GetPrintable());
return false;
} else if (IsOnDuplicates(Record->GetFileName(), Record->GetLastChangeDatetime(), Record->GetFileSize())) {
// The file is on the duplicates list, ignore it.
// Should not happen, at least not after hashing. Or why did it get hashed in the first place then?
AddDebugLogLineN(logKnownFiles, CFormat(wxT("%s is on the duplicates list")) % Record->GetFileName().GetPrintable());
return false;
} else {
if (afterHashing && existing->GetFileSize() == Record->GetFileSize()) {
// We just hashed a "new" shared file and find it's already known under a different name or date.
// Guess what - it was probably renamed or touched.
// So copy over all properties from the existing known file and just keep name/date.
time_t newDate = Record->GetLastChangeDatetime();
CPath newName = Record->GetFileName();
CMemFile f;
existing->WriteToFile(&f);
f.Reset();
Record->LoadFromFile(&f);
Record->SetLastChangeDatetime(newDate);
Record->SetFileName(newName);
}
// The file is a duplicated hash. Add THE OLD ONE to the duplicates list.
// (This is used when reading the known file list where the duplicates are stored in front.)
m_duplicateFileList.push_back(existing);
if (theApp->sharedfiles) {
// Removing the old kad keywords created with the old filename
theApp->sharedfiles->RemoveKeywords(existing);
}
m_knownFileMap[tkey] = Record;
return true;
}
}
} else {
AddDebugLogLineN(logGeneral,
CFormat(wxT("%s is 0-size, not added")) %
Record->GetFileName());
return false;
}
}
示例14: skinFileName
bool CamuleDlg::Check_and_Init_Skin()
{
bool ret = true;
wxString skinFileName(thePrefs::GetSkin());
if (skinFileName.IsEmpty() || skinFileName.IsSameAs(_("- default -"))) {
return false;
}
wxString userDir(JoinPaths(GetConfigDir(), wxT("skins")) + wxFileName::GetPathSeparator());
wxStandardPathsBase &spb(wxStandardPaths::Get());
#ifdef __WINDOWS__
wxString dataDir(spb.GetPluginsDir());
#elif defined(__WXMAC__)
wxString dataDir(spb.GetDataDir());
#else
wxString dataDir(spb.GetDataDir().BeforeLast(wxT('/')) + wxT("/amule"));
#endif
wxString systemDir(JoinPaths(dataDir,wxT("skins")) + wxFileName::GetPathSeparator());
skinFileName.Replace(wxT("User:"), userDir );
skinFileName.Replace(wxT("System:"), systemDir );
m_skinFileName.Assign(skinFileName);
if (!m_skinFileName.FileExists()) {
AddLogLineC(CFormat(
_("Skin directory '%s' does not exist")) %
skinFileName );
ret = false;
} else if (!m_skinFileName.IsFileReadable()) {
AddLogLineC(CFormat(
_("WARNING: Unable to open skin file '%s' for read")) %
skinFileName);
ret = false;
}
wxFFileInputStream in(m_skinFileName.GetFullPath());
wxZipInputStream zip(in);
wxZipEntry *entry;
while ((entry = zip.GetNextEntry()) != NULL) {
wxZipEntry*& current = cat[entry->GetInternalName()];
delete current;
current = entry;
}
return ret;
}
示例15: switch
wxString CStatTreeItemSimple::GetDisplayString() const
{
switch (m_valuetype) {
case vtInteger:
switch (m_displaymode) {
case dmTime: return CFormat(wxGetTranslation(m_label)) % CastSecondsToHM(m_intvalue);
case dmBytes: return CFormat(wxGetTranslation(m_label)) % CastItoXBytes(m_intvalue);
default: return CFormat(wxGetTranslation(m_label)) % m_intvalue;
}
case vtFloat: return CFormat(wxGetTranslation(m_label)) % m_floatvalue;
case vtString: return CFormat(wxGetTranslation(m_label)) % m_stringvalue;
default: return wxGetTranslation(m_label);
}
}