| 324 | } |
| 325 | |
| 326 | void InstanceImportTask::processModrinth() |
| 327 | { |
| 328 | auto* inst_creation_task = new ModrinthCreationTask(m_stagingPath, m_globalSettings, m_parent, m_sourceUrl.toString()); |
| 329 | |
| 330 | inst_creation_task->setName(*this); |
| 331 | inst_creation_task->setIcon(m_instIcon); |
| 332 | inst_creation_task->setGroup(m_instGroup); |
| 333 | |
| 334 | connect(inst_creation_task, &Task::succeeded, this, [this, inst_creation_task] { |
| 335 | setOverride(inst_creation_task->shouldOverride()); |
| 336 | emitSucceeded(); |
| 337 | }); |
| 338 | connect(inst_creation_task, &Task::failed, this, &InstanceImportTask::emitFailed); |
| 339 | connect(inst_creation_task, &Task::progress, this, &InstanceImportTask::setProgress); |
| 340 | connect(inst_creation_task, &Task::status, this, &InstanceImportTask::setStatus); |
| 341 | connect(inst_creation_task, &Task::finished, inst_creation_task, &InstanceCreationTask::deleteLater); |
| 342 | |
| 343 | connect(this, &Task::aborted, inst_creation_task, &InstanceCreationTask::abort); |
| 344 | connect(inst_creation_task, &Task::aborted, this, &Task::abort); |
| 345 | connect(inst_creation_task, &Task::abortStatusChanged, this, &Task::setAbortable); |
| 346 | |
| 347 | inst_creation_task->start(); |
| 348 | } |