本文整理汇总了C++中WStrVec::PopAt方法的典型用法代码示例。如果您正苦于以下问题:C++ WStrVec::PopAt方法的具体用法?C++ WStrVec::PopAt怎么用?C++ WStrVec::PopAt使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类WStrVec
的用法示例。
在下文中一共展示了WStrVec::PopAt方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: NextFile
WCHAR* DirFileProvider::NextFile() {
if (filesToOpen.size() > 0) {
return filesToOpen.PopAt(0);
}
if (dirsToVisit.size() > 0) {
// test next directory
AutoFreeW path(dirsToVisit.PopAt(0));
OpenDir(path);
return NextFile();
}
return nullptr;
}
示例2: NextFile
WCHAR *DirFileProvider::NextFile()
{
if (filesToOpen.Count() > 0) {
return filesToOpen.PopAt(0);
}
if (dirsToVisit.Count() > 0) {
// test next directory
ScopedMem<WCHAR> path(dirsToVisit.PopAt(0));
OpenDir(path);
return NextFile();
}
return nullptr;
}
示例3: Delete
bool Delete(int index) {
if (index < Count()) {
free(text.PopAt(index));
return true;
}
return false;
}
示例4: Run
virtual void Run() {
// filters all file paths on network drives, removable drives and
// all paths which still exist from the list (remaining paths will
// be marked as inexistent in gFileHistory)
for (size_t i = 0; i < paths.Count() && !WasCancelRequested(); i++) {
WCHAR *path = paths.At(i);
if (!path || !path::IsOnFixedDrive(path) || DocumentPathExists(path)) {
free(paths.PopAt(i--));
}
}
if (!WasCancelRequested())
uitask::Post(this);
}
示例5: GetAllMatchingFiles
static size_t GetAllMatchingFiles(const WCHAR* dir, const WCHAR* filter, WStrVec& files, bool showProgress) {
WStrVec dirsToVisit;
dirsToVisit.Append(str::Dup(dir));
while (dirsToVisit.size() > 0) {
if (showProgress) {
wprintf(L".");
fflush(stdout);
}
AutoFreeW path(dirsToVisit.PopAt(0));
CollectStressTestSupportedFilesFromDirectory(path, filter, files);
AutoFreeW pattern(str::Format(L"%s\\*", path));
CollectPathsFromDirectory(pattern, dirsToVisit, true);
}
return files.size();
}
示例6: CleanUpThumbnailCache
// removes thumbnails that don't belong to any frequently used item in file history
void CleanUpThumbnailCache(const FileHistory& fileHistory) {
AutoFreeW thumbsPath(AppGenDataFilename(THUMBNAILS_DIR_NAME));
if (!thumbsPath)
return;
AutoFreeW pattern(path::Join(thumbsPath, L"*.png"));
WStrVec files;
WIN32_FIND_DATA fdata;
HANDLE hfind = FindFirstFile(pattern, &fdata);
if (INVALID_HANDLE_VALUE == hfind)
return;
do {
if (!(fdata.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY))
files.Append(str::Dup(fdata.cFileName));
} while (FindNextFile(hfind, &fdata));
FindClose(hfind);
Vec<DisplayState*> list;
fileHistory.GetFrequencyOrder(list);
for (size_t i = 0; i < list.size() && i < FILE_HISTORY_MAX_FREQUENT * 2; i++) {
AutoFreeW bmpPath(GetThumbnailPath(list.at(i)->filePath));
if (!bmpPath)
continue;
int idx = files.Find(path::GetBaseName(bmpPath));
if (idx != -1) {
CrashIf(idx < 0 || files.size() <= (size_t)idx);
free(files.PopAt(idx));
}
}
for (size_t i = 0; i < files.size(); i++) {
AutoFreeW bmpPath(path::Join(thumbsPath, files.at(i)));
file::Delete(bmpPath);
}
}