Example #1
0
void FileSettings::constrainCacheToMaxSize(int size)
{
	const QString dataPath = dataFilePath();
	QDir dataDir(dataPath);

	// get size of cache
	QFileInfoList dataFileInfoList = dataDir.entryInfoList(QDir::Files | QDir::NoDotDot, QDir::Time);
	int cacheSize = QFileInfo(dataPath).size();
	for (int i = 0; i < dataFileInfoList.size(); ++i)
		cacheSize += dataFileInfoList.at(i).size();

	while (cacheSize > size) // remove oldest file settings from cache
	{
		if (dataFileInfoList.isEmpty())
			break;
		const QString fileName = dataFileInfoList.last().fileName();
		int fileSize = dataFileInfoList.takeLast().size();
		if (dataDir.remove(fileName))
			cacheSize -= fileSize;
	}
}
Example #2
0
threadParam *MainWindow::getData(){

    threadParam *p=0;
    QModelIndexList selection=currentPanel->panel->selectionModel()->selectedRows(0);
    if (selection.size()){
        if ((currentPanel->model->fileName(selection.first())=="..")&&(selection.size()==1))
            return 0;


        QFileInfoList files;
        foreach(QModelIndex item,selection){
            files<<currentPanel->model->fileInfo(item);
            if (files.last().fileName()==trUtf8("..")) files.pop_back();
        }

        p=new threadParam(files);
        p->source=currentPanel->model->rootPath();

        if (currentPanel==left_panel) p->dest=right_panel->model->rootPath();
        else p->dest=left_panel->model->rootPath();

    }