MCPcopy Create free account
hub / github.com/Serial-Studio/Serial-Studio / newJsonFile

Method newJsonFile

app/src/DataModel/ProjectModel.cpp:2085–2162  ·  view source on GitHub ↗

* @brief Resets all project state to factory defaults. */

Source from the content-addressed store, hash-verified

2083 * @brief Resets all project state to factory defaults.
2084 */
2085void DataModel::ProjectModel::newJsonFile()
2086{
2087 m_groups.clear();
2088 m_actions.clear();
2089 m_sources.clear();
2090 m_workspaces.clear();
2091 m_autoSnapshot.clear();
2092 m_tables.clear();
2093 m_groupFolders.clear();
2094 m_tableFolders.clear();
2095 m_hiddenGroupIds.clear();
2096 m_customizeWorkspaces = false;
2097
2098 const bool hadMqttPublisher = !m_mqttPublisher.isEmpty();
2099 m_mqttPublisher = QJsonObject();
2100
2101 const bool wasLocked = m_locked;
2102 m_passwordHash.clear();
2103 m_locked = false;
2104
2105 m_frameEndSequence = "\\n";
2106 m_checksumAlgorithm = "";
2107 m_frameStartSequence = "$";
2108 m_writerVersionAtCreation = "";
2109 m_hexadecimalDelimiters = false;
2110 m_title = tr("Untitled Project");
2111 m_pointCount = 100;
2112 m_plotTimeRange = 10.0;
2113 m_changeDrivenTransforms = false;
2114 m_nextUniqueId = 1;
2115 m_controlScriptCode = "";
2116 DataModel::ControlScript::instance().setCode(m_controlScriptCode);
2117 m_frameDecoder = SerialStudio::PlainText;
2118 m_frameDetection = SerialStudio::EndDelimiterOnly;
2119 m_widgetSettings = QJsonObject();
2120 m_treeExpansion = QJsonObject();
2121 m_diagramCollapse = QJsonObject();
2122
2123 DataModel::Source defaultSource;
2124 defaultSource.sourceId = 0;
2125 defaultSource.title = tr("Device A");
2126 defaultSource.busType = static_cast<int>(SerialStudio::BusType::UART);
2127 defaultSource.frameStart = m_frameStartSequence;
2128 defaultSource.frameEnd = m_frameEndSequence;
2129 defaultSource.checksumAlgorithm = m_checksumAlgorithm;
2130 defaultSource.frameDetection = static_cast<int>(m_frameDetection);
2131 defaultSource.decoderMethod = static_cast<int>(m_frameDecoder);
2132 defaultSource.hexadecimalDelimiters = m_hexadecimalDelimiters;
2133 seedDefaultFrameParser(defaultSource);
2134 m_sources.push_back(defaultSource);
2135
2136 m_filePath = "";
2137 watchProjectFile();
2138
2139 Q_EMIT groupsChanged();
2140 Q_EMIT actionsChanged();
2141 Q_EMIT sourcesChanged();
2142 Q_EMIT titleChanged();

Callers 3

restoreLastProjectMethod · 0.80
fileNewMethod · 0.80

Calls 5

QJsonObjectClass · 0.85
seedDefaultFrameParserFunction · 0.85
isEmptyMethod · 0.80
setCodeMethod · 0.80
clearMethod · 0.45

Tested by

no test coverage detected