From 8a3f2f2ce8a6f7db2890f5f3cb0e0c0a71ebf626 Mon Sep 17 00:00:00 2001 From: tetektoza Date: Fri, 20 Oct 2023 16:56:11 +0200 Subject: [PATCH] Documentation: Add documentatioon to config.cpp Adds documentation to config.cpp, for functions that were missing it and also for newly added createDirectoriesOnPath(). --- source/config.cpp | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/source/config.cpp b/source/config.cpp index 3aebb73d..05958d9e 100644 --- a/source/config.cpp +++ b/source/config.cpp @@ -10,6 +10,16 @@ static QJsonObject theConfig; QString Config::jsonFilePath; + +/** + * @brief Loads current configuration from the config .json file + * + * This function loads current configuration from the config .json file. + * It inserts specific values mapping them to keys, and creates path for the + * config if user has deleted it, or runs app for the first time. + * + * @return Nothing + */ void Config::loadConfiguration() { // create directories on the path if they do not exist @@ -50,6 +60,11 @@ void Config::loadConfiguration() } } +/** + * @brief Stores current configuration in the config .json file + * + * @return Nothing + */ void Config::storeConfiguration() { QFile saveJson(jsonFilePath); @@ -59,6 +74,17 @@ void Config::storeConfiguration() saveJson.close(); } +/** + * @brief Creates directories on certain path + * + * This function creates directories on certain path. Path location depends on + * if user is working on Windows or Mac/Linux. + * + * If the user works on Windows, it will save it under AppData/.config/[...]. + * On any other OS it will save it under /home/user/.config/diasurgical/[...] + * + * @return Returns true if path has been created or already existed - false otherwise + */ bool Config::createDirectoriesOnPath() { #ifdef Q_OS_WINDOWS @@ -70,11 +96,28 @@ bool Config::createDirectoriesOnPath() return QDir().mkpath(jsonFilePath); } +/** + * @brief Retrieves value from .json config file + * + * This function retrieves value from .json config file by the value + * specified by name parameter. + * + * @return Returns QJsonValue containing value of the parameter specified + * by "name" key, otherwise if not found - returns QJsonValue::Undefined + */ QJsonValue Config::value(const QString &name) { return theConfig.value(name); } +/** + * @brief Inserts value in .json config file + * + * This function inserts value into .json config file, mapping it with + * the key specified in parameters. + * + * @return Nothing + */ void Config::insert(const QString &key, const QJsonValue &value) { theConfig.insert(key, value);