void ListContentOfDirectory(QDir dir, bool Recurse, bool Hash) { //ListFilesInDirectory(dir); dir.setFilter( QDir::Hidden | QDir::NoSymLinks |QDir::AllDirs ); dir.setSorting(QDir::Size | QDir::Reversed); QFileInfoList list = dir.entryInfoList(); for (int i = 0; i < list.size(); ++i) { QFileInfo fileInfo = list.at(i); QString str1 = fileInfo.fileName(); QString str2 = "."; QString str3 = ".."; if (!str1.compare(str2) || !str1.compare(str3) ) { // std::cout << " found . or .. "; } else { ListFilesInDirectory(dir,Hash); QDir NextDir(fileInfo.absoluteFilePath()); if (Recurse) { ListContentOfDirectory(NextDir,Recurse,Hash); ListFilesInDirectory(dir,Hash); } } } }
// ListDirectory list for given path void ListDirectory(QDir dir, bool Recurse) { dir.setFilter( QDir::Hidden | QDir::NoSymLinks |QDir::AllDirs ); dir.setSorting(QDir::Size | QDir::Reversed); QFileInfoList list = dir.entryInfoList(); for (int i = 0; i < list.size(); ++i) { QFileInfo fileInfo = list.at(i); if (fileInfo.isFile()) { std::cout << qPrintable(QString("%1").arg(fileInfo.absoluteFilePath())) << std::endl; QDir NextDir(fileInfo.absoluteFilePath()); if (Recurse) ListDirectory(NextDir,1); } } }
bool DirectKey::GetPosList(dk_vec_pos& vpos) { if (m_dequeDir.empty()) { return false; } NDPlayer& player = NDPlayer::defaultHero(); CCPoint pos = player.GetPosition(); int iCellX = (int)pos.x-DISPLAY_POS_X_OFFSET, iCellY = (int)pos.y-DISPLAY_POS_Y_OFFSET; if( !(iCellX % 16 == 0 && iCellY % 16 == 0) ) { return false; } iCellX /= 16; iCellY /= 16; for_vec(m_dequeDir, deque_dir_it) { KeyDirect dir = *it; if (!NextDir(iCellX, iCellY, dir)) continue; int tmpX = iCellX, tmpY = iCellY; switch (dir) { case KeyDirectLeft: tmpX--; break; case KeyDirectRight: tmpX++; break; case KeyDirectUp: tmpY--; break; case KeyDirectDown: tmpY++; break; default: continue; break; } if (CheckCell(tmpX, tmpY)) { vpos.push_back( //ccp(tmpX*MAP_UNITSIZE+DISPLAY_POS_X_OFFSET, tmpY*MAP_UNITSIZE+DISPLAY_POS_Y_OFFSET));//@del ConvertUtil::convertCellToDisplay(tmpX, tmpY)); //iCellX = tmpX; iCellY = tmpY; m_dequeDir.erase(m_dequeDir.begin(), it); break; } }