removed unused or useless stuff,
renamed some functions for better description, repaired the SettingsManager usage, ToDo: Dropdown list is not updated, it needs a restart, display names for the directories instead of the path,
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
#include "..\Header\SettingsManager.h"
|
||||
#include "qdebug.h"
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////
|
||||
@@ -7,7 +8,7 @@
|
||||
SettingsManager::SettingsManager(QObject *parent)
|
||||
: QObject(parent)
|
||||
{
|
||||
file.setFileName("meshviewer.config");
|
||||
m_file.setFileName("meshviewer.config");
|
||||
readFromFile();
|
||||
}
|
||||
|
||||
@@ -28,24 +29,17 @@ SettingsManager* SettingsManager::getInstance(QObject *parent)
|
||||
|
||||
void SettingsManager::readFromFile()
|
||||
{
|
||||
if (file.open(QIODevice::ReadOnly))
|
||||
if (m_file.open(QIODevice::ReadOnly))
|
||||
{
|
||||
|
||||
QByteArray stream = file.readAll();
|
||||
QByteArray stream = m_file.readAll();
|
||||
QList<QByteArray> lines = stream.split('\n');
|
||||
|
||||
for (auto& it : lines)
|
||||
{
|
||||
if (it.startsWith("<qkList>"))
|
||||
{
|
||||
QList<QByteArray> values = it.right(it.size() - it.indexOf('>') - 1).split(';');
|
||||
for (int i = 0; i < values.size(); i++)
|
||||
{
|
||||
if (i == values.size() - 1)
|
||||
listOfDirs.append(values[i]);
|
||||
else
|
||||
listOfDirs.append(values[i] + ";");
|
||||
}
|
||||
m_listOfDirs = QString(it.right(it.size() - it.indexOf('>') - 1)).split(";");
|
||||
}
|
||||
else if (it.startsWith("<bgOn>"))
|
||||
{
|
||||
@@ -98,44 +92,39 @@ void SettingsManager::readFromFile()
|
||||
}
|
||||
|
||||
}
|
||||
file.close();
|
||||
m_file.close();
|
||||
}
|
||||
}
|
||||
|
||||
void SettingsManager::writeToFile()
|
||||
{
|
||||
file.open(QIODevice::WriteOnly);
|
||||
m_file.open(QIODevice::WriteOnly);
|
||||
|
||||
file.write(QString("<bgOn>%1;%2;%3\n").arg(m_bgColorOn.x()).arg(m_bgColorOn.y()).arg(m_bgColorOn.z()).toUtf8());
|
||||
file.write(QString("<bgOff>%1;%2;%3\n").arg(m_bgColorOff.x()).arg(m_bgColorOff.y()).arg(m_bgColorOff.z()).toUtf8());
|
||||
file.write(QString("<liCo>%1;%2;%3\n").arg(m_lightColor.x()).arg(m_lightColor.y()).arg(m_lightColor.z()).toUtf8());
|
||||
m_file.write(QString("<bgOn>%1;%2;%3\n").arg(m_bgColorOn.x()).arg(m_bgColorOn.y()).arg(m_bgColorOn.z()).toUtf8());
|
||||
m_file.write(QString("<bgOff>%1;%2;%3\n").arg(m_bgColorOff.x()).arg(m_bgColorOff.y()).arg(m_bgColorOff.z()).toUtf8());
|
||||
m_file.write(QString("<liCo>%1;%2;%3\n").arg(m_lightColor.x()).arg(m_lightColor.y()).arg(m_lightColor.z()).toUtf8());
|
||||
|
||||
file.write(QString("<bfCul>%1\n").arg(m_bfCulling).toUtf8());
|
||||
file.write(QString("<liOn>%1\n").arg(m_light).toUtf8());
|
||||
file.write(QString("<heLi>%1\n").arg(m_headlight).toUtf8());
|
||||
file.write(QString("<auCo>%1\n").arg(m_autoColor).toUtf8());
|
||||
m_file.write(QString("<bfCul>%1\n").arg(m_bfCulling).toUtf8());
|
||||
m_file.write(QString("<liOn>%1\n").arg(m_light).toUtf8());
|
||||
m_file.write(QString("<heLi>%1\n").arg(m_headlight).toUtf8());
|
||||
m_file.write(QString("<auCo>%1\n").arg(m_autoColor).toUtf8());
|
||||
|
||||
file.write(QString("<liTy>%1\n").arg(m_lightType).toUtf8());
|
||||
file.write(QString("<atFa>%1\n").arg(m_attenuation).toUtf8());
|
||||
file.write(QString("<amCo>%1\n").arg(m_ambient).toUtf8());
|
||||
file.write(QString("<qkList>%1\n").arg(listOfDirs).toUtf8());
|
||||
m_file.write(QString("<liTy>%1\n").arg(m_lightType).toUtf8());
|
||||
m_file.write(QString("<atFa>%1\n").arg(m_attenuation).toUtf8());
|
||||
m_file.write(QString("<amCo>%1\n").arg(m_ambient).toUtf8());
|
||||
if(!m_listOfDirs.isEmpty())
|
||||
m_file.write(QString("<qkList>%1\n").arg(m_listOfDirs.join(";")).toUtf8());
|
||||
|
||||
file.close();
|
||||
m_file.close();
|
||||
}
|
||||
|
||||
// getter ///////////////////////////////////////////////////////////////
|
||||
|
||||
QString SettingsManager::getListOfDirs()
|
||||
QStringList SettingsManager::getListOfDirs()
|
||||
{
|
||||
return listOfDirs;
|
||||
return m_listOfDirs;
|
||||
}
|
||||
|
||||
void SettingsManager::setListOfDirs(QString newDirSet)
|
||||
{
|
||||
listOfDirs = newDirSet;
|
||||
}
|
||||
|
||||
|
||||
QVector3D SettingsManager::getBgColorOn() const
|
||||
{
|
||||
return m_bgColorOn;
|
||||
@@ -243,3 +232,11 @@ void SettingsManager::setAutoColor(int value)
|
||||
m_autoColor = true;
|
||||
}
|
||||
|
||||
void SettingsManager::updateDirectories(QString path)
|
||||
{
|
||||
if (m_listOfDirs.contains(path))
|
||||
m_listOfDirs.removeAll(path);
|
||||
else
|
||||
m_listOfDirs.append(path);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user