bool ZpCallback(const zp::Char* path, zp::u32 fileSize, void* param) { ProgressDialog* dlg = (ProgressDialog*)param; if (dlg == NULL) { return true; } if (dlg->m_running) { if (dlg->m_totalFileSize != 0) { dlg->setProgress(path, (float)dlg->m_doneFileSize / dlg->m_totalFileSize); } else { dlg->setProgress(path, 1.0f); } } dlg->m_doneFileSize += fileSize; return dlg->m_running; }