void cAmp::LoadPlsts() { // load last -from set if (vSetPls.empty()) { CList* pl = new CList(); vPlst.push_back(pl); pl->Save(); } else for (size_t i=0; i < vSetPls.size(); ++i) { CList* pl = new CList(); pl->name = vSetPls[i].name; pl->bokm = vSetPls[i].bokm; pl->Load(); vPlst.push_back(pl); } // old ids int l = int(vPlst.size())-1; plsPlId = mia(0,l, plsPlId); plsPl = vPlst[plsPlId]; plsId = mia(0,l, plsId); pls = vPlst[plsId]; // last state play if (bWasPlay) if (plsPl && plsPl->idPl >= 0 && plsPl->idPl < plsPl->vList.size()) { pTrk tkPl = plsPl->vList[plsPl->idPl]; if (tkPl && !tkPl->isDir()) { string s = tkPl->getFullPath(); if (boost::filesystem::exists(s)) PlayFrom(lastPos); } } }