* @brief Restores the last opened project file after all modules are wired up. */
| 119 | * @brief Restores the last opened project file after all modules are wired up. |
| 120 | */ |
| 121 | void AppState::restoreLastProject() |
| 122 | { |
| 123 | auto& pm = DataModel::ProjectModel::instance(); |
| 124 | const QString saved_path = m_settings.value("project_file_path", "").toString(); |
| 125 | const auto persistedMode = m_operationMode; |
| 126 | |
| 127 | if (!saved_path.isEmpty() && QFileInfo::exists(saved_path)) |
| 128 | pm.openJsonFile(saved_path); |
| 129 | else |
| 130 | pm.newJsonFile(); |
| 131 | |
| 132 | if (m_operationMode != persistedMode) |
| 133 | setOperationMode(persistedMode); |
| 134 | } |
| 135 | |
| 136 | /** |
| 137 | * @brief Marks the session as ephemeral (operator runs) so QSettings writes are skipped, |
no test coverage detected