akj::tTAFHandle cFontLoader::CreateTexAtlasFont( tFaceHandle handle, uint32_t initial_size) { if(!handle.IsValid()) return tTAFHandle(); FreeTypeFace& face = TypeFace(handle); cCreateTexAtlasTask create_task(face, initial_size); while(!create_task.IsDone()) create_task.DoWork(); std::unique_ptr<cTexAtlasFont> taf( new cTexAtlasFont(face, std::unique_ptr<FreeTypeLibrary>(new FreeTypeLibrary), std::move(create_task.GetFinishedAtlas()))); cArray<16, uint32_t> sizes = {14, 12, 21}; for(uint32_t i: sizes) { if(i == initial_size) continue; cCreateTexAtlasTask create_task2(face, i); while(!create_task2.IsDone()) create_task2.DoWork(); taf->AddAtlas(create_task2.GetFinishedAtlas()); } taf->RepackAtlasTexture(); return InsertTAF(std::move(taf)); }
void psync_task_rename_local_folder(psync_syncid_t syncid, psync_folderid_t folderid, psync_folderid_t localfolderid, psync_folderid_t newlocalparentfolderid, const char *newname){ create_task2(PSYNC_RENAME_LOCAL_FOLDER, syncid, folderid, localfolderid, newlocalparentfolderid, newname); }