Fix relative path for image download & settings
This commit is contained in:
parent
1e2d5b0693
commit
be7efa98cf
4 changed files with 33 additions and 13 deletions
|
@ -154,10 +154,14 @@ int main(int argc, char *argv[])
|
||||||
|
|
||||||
qsrand(QDateTime::currentDateTime().toTime_t());
|
qsrand(QDateTime::currentDateTime().toTime_t());
|
||||||
|
|
||||||
|
#ifdef PORTABLE_BUILD
|
||||||
|
const QString dataDir = "data/";
|
||||||
|
#else
|
||||||
#if QT_VERSION < 0x050000
|
#if QT_VERSION < 0x050000
|
||||||
const QString dataDir = QDesktopServices::storageLocation(QDesktopServices::DataLocation);
|
const QString dataDir = QDesktopServices::storageLocation(QDesktopServices::DataLocation);
|
||||||
#else
|
#else
|
||||||
const QString dataDir = QStandardPaths::standardLocations(QStandardPaths::DataLocation).first();
|
const QString dataDir = QStandardPaths::standardLocations(QStandardPaths::DataLocation).first();
|
||||||
|
#endif
|
||||||
#endif
|
#endif
|
||||||
if (!db->getLoadSuccess())
|
if (!db->getLoadSuccess())
|
||||||
if (!db->loadCardDatabase(dataDir + "/cards.xml"))
|
if (!db->loadCardDatabase(dataDir + "/cards.xml"))
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
#include "settingscache.h"
|
#include "settingscache.h"
|
||||||
#include <QSettings>
|
#include <QSettings>
|
||||||
#include <QFile>
|
#include <QFile>
|
||||||
|
|
||||||
#if QT_VERSION >= 0x050000
|
#if QT_VERSION >= 0x050000
|
||||||
#include <QStandardPaths>
|
#include <QStandardPaths>
|
||||||
#else
|
#else
|
||||||
|
@ -9,16 +10,16 @@
|
||||||
|
|
||||||
QString SettingsCache::getSettingsPath()
|
QString SettingsCache::getSettingsPath()
|
||||||
{
|
{
|
||||||
QString file = "";
|
QString file = "settings/";
|
||||||
|
|
||||||
#ifndef PORTABLE_BUILD
|
#ifndef PORTABLE_BUILD
|
||||||
#if QT_VERSION >= 0x050000
|
#if QT_VERSION >= 0x050000
|
||||||
file = QStandardPaths::writableLocation(QStandardPaths::DataLocation);
|
file = QStandardPaths::writableLocation(QStandardPaths::DataLocation);
|
||||||
#else
|
#else
|
||||||
file = QDesktopServices::storageLocation(QDesktopServices::DataLocation);
|
file = QDesktopServices::storageLocation(QDesktopServices::DataLocation);
|
||||||
#endif
|
|
||||||
#endif
|
#endif
|
||||||
file.append("/settings/");
|
file.append("/settings/");
|
||||||
|
#endif
|
||||||
|
|
||||||
return file;
|
return file;
|
||||||
}
|
}
|
||||||
|
|
|
@ -114,10 +114,10 @@ private:
|
||||||
bool spectatorsCanTalk;
|
bool spectatorsCanTalk;
|
||||||
bool spectatorsCanSeeEverything;
|
bool spectatorsCanSeeEverything;
|
||||||
int keepalive;
|
int keepalive;
|
||||||
QString getSettingsPath();
|
|
||||||
void translateLegacySettings();
|
void translateLegacySettings();
|
||||||
public:
|
public:
|
||||||
SettingsCache();
|
SettingsCache();
|
||||||
|
QString getSettingsPath();
|
||||||
const QByteArray &getMainWindowGeometry() const { return mainWindowGeometry; }
|
const QByteArray &getMainWindowGeometry() const { return mainWindowGeometry; }
|
||||||
QString getLang() const { return lang; }
|
QString getLang() const { return lang; }
|
||||||
QString getDeckPath() const { return deckPath; }
|
QString getDeckPath() const { return deckPath; }
|
||||||
|
|
|
@ -45,19 +45,19 @@
|
||||||
OracleWizard::OracleWizard(QWidget *parent)
|
OracleWizard::OracleWizard(QWidget *parent)
|
||||||
: QWizard(parent)
|
: QWizard(parent)
|
||||||
{
|
{
|
||||||
settings = new QSettings(this);
|
settings = new QSettings(settingsCache->getSettingsPath()+"global.ini",QSettings::IniFormat, this);
|
||||||
connect(settingsCache, SIGNAL(langChanged()), this, SLOT(updateLanguage()));
|
connect(settingsCache, SIGNAL(langChanged()), this, SLOT(updateLanguage()));
|
||||||
|
|
||||||
QString dataDir;
|
QString dataDir;
|
||||||
|
|
||||||
#ifndef PORTABLE_BUILD
|
#ifndef PORTABLE_BUILD
|
||||||
#if QT_VERSION < 0x050000
|
#if QT_VERSION < 0x050000
|
||||||
QDesktopServices::storageLocation(QDesktopServices::DataLocation)
|
QDesktopServices::storageLocation(QDesktopServices::DataLocation);
|
||||||
#else
|
#else
|
||||||
QStandardPaths::standardLocations(QStandardPaths::DataLocation).first();
|
QStandardPaths::standardLocations(QStandardPaths::DataLocation).first();
|
||||||
#endif
|
#endif
|
||||||
#else
|
#else
|
||||||
dataDir.append("data/");
|
dataDir.append("../cockatrice/data");
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
importer = new OracleImporter(dataDir, this);
|
importer = new OracleImporter(dataDir, this);
|
||||||
|
@ -517,11 +517,17 @@ bool SaveSetsPage::validatePage()
|
||||||
dataDir = QStandardPaths::standardLocations(QStandardPaths::DataLocation).first();
|
dataDir = QStandardPaths::standardLocations(QStandardPaths::DataLocation).first();
|
||||||
#endif
|
#endif
|
||||||
#else
|
#else
|
||||||
dataDir = "data/";
|
dataDir = "../cockatrice/data";
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
QSettings* settings = new QSettings(this);
|
#ifdef PORTABLE_BUILD
|
||||||
|
QSettings* settings = new QSettings("../cockatrice/settings/global.ini",QSettings::IniFormat,this);
|
||||||
|
QString defaultPath = "../cockatrice/data/cards.xml";
|
||||||
|
settings->setValue("paths/carddatabase", "data/cards.xml");
|
||||||
|
#else
|
||||||
|
QSettings* settings = new QSettings(settingsCache->getSettingsPath()+"global.ini",QSettings::IniFormat,this);
|
||||||
QString defaultPath = settings->value("paths/carddatabase").toString();
|
QString defaultPath = settings->value("paths/carddatabase").toString();
|
||||||
|
#endif
|
||||||
QString windowName = tr("Save card database");
|
QString windowName = tr("Save card database");
|
||||||
QString fileType = tr("XML; card database (*.xml)");
|
QString fileType = tr("XML; card database (*.xml)");
|
||||||
|
|
||||||
|
@ -532,6 +538,7 @@ bool SaveSetsPage::validatePage()
|
||||||
fileName = dataDir + "/cards.xml";
|
fileName = dataDir + "/cards.xml";
|
||||||
else
|
else
|
||||||
fileName = QFileDialog::getSaveFileName(this, windowName, dataDir + "/cards.xml", fileType);
|
fileName = QFileDialog::getSaveFileName(this, windowName, dataDir + "/cards.xml", fileType);
|
||||||
|
|
||||||
settings->setValue("paths/carddatabase", fileName);
|
settings->setValue("paths/carddatabase", fileName);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
|
@ -725,10 +732,18 @@ bool SaveTokensPage::validatePage()
|
||||||
dataDir = QStandardPaths::standardLocations(QStandardPaths::DataLocation).first();
|
dataDir = QStandardPaths::standardLocations(QStandardPaths::DataLocation).first();
|
||||||
#endif
|
#endif
|
||||||
#else
|
#else
|
||||||
dataDir = "data/";
|
dataDir = "../cockatrice/data";
|
||||||
#endif
|
#endif
|
||||||
QSettings* settings = new QSettings(this);
|
|
||||||
|
#ifdef PORTABLE_BUILD
|
||||||
|
QSettings* settings = new QSettings("../cockatrice/settings/global.ini",QSettings::IniFormat,this);
|
||||||
|
QString defaultPath = "../cockatrice/data/tokens.xml";
|
||||||
|
settings->setValue("paths/tokendatabase", "data/tokens.xml");
|
||||||
|
#else
|
||||||
|
QSettings* settings = new QSettings(settingsCache->getSettingsPath()+"global.ini",QSettings::IniFormat,this);
|
||||||
QString defaultPath = settings->value("paths/tokendatabase").toString();
|
QString defaultPath = settings->value("paths/tokendatabase").toString();
|
||||||
|
#endif
|
||||||
|
|
||||||
QString windowName = tr("Save token database");
|
QString windowName = tr("Save token database");
|
||||||
QString fileType = tr("XML; token database (*.xml)");
|
QString fileType = tr("XML; token database (*.xml)");
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue