147 lines
3.0 KiB
C++
147 lines
3.0 KiB
C++
#include "ProgramSettings.h"
|
|
|
|
CProgramSettings::CProgramSettings()
|
|
{
|
|
|
|
}
|
|
|
|
|
|
unsigned int CProgramSettings::LoadSettings(CSettings* Settings)
|
|
{
|
|
QFile* SettingsFile = new QFile("./Configuration/Settings.mcs");
|
|
if(SettingsFile)
|
|
{
|
|
if(SettingsFile->open(QIODevice::ReadOnly | QIODevice::Unbuffered) == false)
|
|
{
|
|
LoadDefaultSettings(Settings);
|
|
SaveSettings(Settings);
|
|
return RET_ERROR;
|
|
}
|
|
}
|
|
else
|
|
{
|
|
LoadDefaultSettings(Settings);
|
|
return RET_ERROR;
|
|
}
|
|
|
|
QDataStream * InputStream = new QDataStream(SettingsFile);
|
|
|
|
quint32 MagicNbr;// = 0xBAADCAFE;
|
|
|
|
*InputStream >> MagicNbr;
|
|
|
|
if(MagicNbr != 0xBAADCAFE)
|
|
{
|
|
LoadDefaultSettings(Settings);
|
|
return RET_ERROR;
|
|
}
|
|
|
|
*InputStream >> *Settings;
|
|
|
|
SettingsFile->close();
|
|
delete SettingsFile;
|
|
delete InputStream;
|
|
|
|
return RET_OK;
|
|
}
|
|
|
|
void CProgramSettings::LoadDefaultSettings(CSettings *Settings)
|
|
{
|
|
Settings->mVoipMSSettings.mDefaultDID = "555555555";
|
|
Settings->mVoipMSSettings.mPassword = "Voip.ms Password";
|
|
Settings->mVoipMSSettings.mUsername = "Voip.ms Username";
|
|
Settings->mVoipMSSettings.mStartDate = QDate::currentDate();
|
|
}
|
|
|
|
unsigned int CProgramSettings::SaveSettings(CSettings *SettingsData)
|
|
{
|
|
QFile* SettingsFile = new QFile("./Configuration/Settings.mcs");
|
|
if(SettingsFile)
|
|
{
|
|
if(SettingsFile->open(QIODevice::WriteOnly | QIODevice::Unbuffered) == false)
|
|
{
|
|
return RET_ERROR;
|
|
}
|
|
}
|
|
else
|
|
{
|
|
return RET_ERROR;
|
|
}
|
|
|
|
QDataStream * OutputStream = new QDataStream(SettingsFile);
|
|
|
|
quint32 MagicNbr = 0xBAADCAFE;
|
|
|
|
*OutputStream << MagicNbr;
|
|
|
|
*OutputStream << *SettingsData;
|
|
|
|
SettingsFile->flush();
|
|
SettingsFile->close();
|
|
|
|
delete SettingsFile;
|
|
delete OutputStream;
|
|
|
|
return RET_OK;
|
|
}
|
|
|
|
|
|
QDataStream &operator<<(QDataStream &out, const CSettings &source)
|
|
{
|
|
out << source.mVoipMSSettings;
|
|
|
|
return out;
|
|
}
|
|
|
|
QDataStream &operator>>(QDataStream &in, CSettings &dest)
|
|
{
|
|
in >> dest.mVoipMSSettings;
|
|
|
|
return in;
|
|
}
|
|
|
|
QDataStream &operator<<(QDataStream &out, const CVoipMSSMSSettings &source)
|
|
{
|
|
out << source.mDefaultDID
|
|
<< source.mPassword
|
|
<< source.mStartDate
|
|
<< source.mUsername;
|
|
|
|
return out;
|
|
}
|
|
|
|
QDataStream &operator>>(QDataStream &in, CVoipMSSMSSettings &dest)
|
|
{
|
|
in >> dest.mDefaultDID
|
|
>> dest.mPassword
|
|
>> dest.mStartDate
|
|
>> dest.mUsername;
|
|
|
|
return in;
|
|
}
|
|
|
|
CVoipMSSMSSettings& CVoipMSSMSSettings::operator=(const CVoipMSSMSSettings *source)
|
|
{
|
|
if(source == this)
|
|
{
|
|
return *this;
|
|
}
|
|
|
|
this->mDefaultDID = source->mDefaultDID;
|
|
this->mPassword = source->mPassword;
|
|
this->mStartDate = source->mStartDate;
|
|
this->mUsername = source->mUsername;
|
|
|
|
return *this;
|
|
}
|
|
|
|
CSettings& CSettings::operator =(const CSettings &source)
|
|
{
|
|
if(this == &source)
|
|
{
|
|
return *this;
|
|
}
|
|
this->mVoipMSSettings = source.mVoipMSSettings;
|
|
return *this;
|
|
}
|