SXXXXXXX_PyBusMonitor1553/cpp/GrifoScope/QgScope/qgsettings.cpp
2025-12-17 07:59:30 +01:00

59 lines
1.3 KiB
C++

#include "qgsettings.h"
#include <QCoreApplication>
#include <QStandardPaths>
#include <QFile>
#include <QDebug>
static QString appIni("wb.ini");
static QString fixFilename(const QString& fname, QgSettings::IniScope scope)
{
QString tmp=fname.isEmpty() ? appIni : fname;
if (scope==QgSettings::IniUserScope)
{
QStringList lst=QStandardPaths::standardLocations(QStandardPaths::AppDataLocation);
if (lst.isEmpty() || lst.at(0).isEmpty())
return "./"+tmp;
else
return lst.at(0)+"/"+tmp;
}
else
return "./"+tmp;
}
//QgSettings::QgSettings(QObject *parent):
// QSettings(parent)
//{
//}
QgSettings::QgSettings(const QString& filename, IniScope iniScope, QObject* parent):
QSettings(fixFilename(filename, iniScope), QSettings::IniFormat, parent)
{
QFile tmp(fileName());
bool exist=tmp.exists();
qDebug()<<"QgSettings:"<<fileName()<<(exist ? "present" : "not present");
}
void QgSettings::setOrganizationName(const QString& str)
{
QCoreApplication::setOrganizationName(str);
}
void QgSettings::setOrganizationDomain(const QString& str)
{
QCoreApplication::setOrganizationDomain(str);
}
void QgSettings::setApplicationName(const QString& str)
{
QCoreApplication::setApplicationName(str);
}
void QgSettings::setApplicationIni(const QString& fname)
{
appIni=fname;
}