mirror of
https://github.com/tumic0/GPXSee.git
synced 2025-02-20 09:40:49 +01:00
Added remaining permanent settings
This commit is contained in:
parent
4c61e208ed
commit
b0abc976a5
@ -36,7 +36,8 @@ HEADERS += src/config.h \
|
|||||||
src/palette.h \
|
src/palette.h \
|
||||||
src/heartrategraph.h \
|
src/heartrategraph.h \
|
||||||
src/range.h \
|
src/range.h \
|
||||||
src/cpuarch.h
|
src/cpuarch.h \
|
||||||
|
src/settings.h
|
||||||
SOURCES += src/main.cpp \
|
SOURCES += src/main.cpp \
|
||||||
src/gui.cpp \
|
src/gui.cpp \
|
||||||
src/gpx.cpp \
|
src/gpx.cpp \
|
||||||
|
74
src/gui.cpp
74
src/gui.cpp
@ -18,6 +18,7 @@
|
|||||||
#include "config.h"
|
#include "config.h"
|
||||||
#include "icons.h"
|
#include "icons.h"
|
||||||
#include "keys.h"
|
#include "keys.h"
|
||||||
|
#include "settings.h"
|
||||||
#include "gpx.h"
|
#include "gpx.h"
|
||||||
#include "map.h"
|
#include "map.h"
|
||||||
#include "maplist.h"
|
#include "maplist.h"
|
||||||
@ -159,7 +160,6 @@ QAction *GUI::createPOIFileAction(int index)
|
|||||||
QAction *a = new QAction(QFileInfo(_poi.files().at(index)).fileName(),
|
QAction *a = new QAction(QFileInfo(_poi.files().at(index)).fileName(),
|
||||||
this);
|
this);
|
||||||
a->setCheckable(true);
|
a->setCheckable(true);
|
||||||
a->setChecked(true);
|
|
||||||
|
|
||||||
_poiFilesSM->setMapping(a, index);
|
_poiFilesSM->setMapping(a, index);
|
||||||
connect(a, SIGNAL(triggered()), _poiFilesSM, SLOT(map()));
|
connect(a, SIGNAL(triggered()), _poiFilesSM, SLOT(map()));
|
||||||
@ -1064,25 +1064,36 @@ void GUI::writeSettings()
|
|||||||
{
|
{
|
||||||
QSettings settings(APP_NAME, APP_NAME);
|
QSettings settings(APP_NAME, APP_NAME);
|
||||||
|
|
||||||
settings.beginGroup("Window");
|
settings.beginGroup(WINDOW_SETTINGS_GROUP);
|
||||||
settings.setValue("size", size());
|
settings.setValue(WINDOW_SIZE_SETTING, size());
|
||||||
settings.setValue("pos", pos());
|
settings.setValue(WINDOW_POS_SETTING, pos());
|
||||||
settings.endGroup();
|
settings.endGroup();
|
||||||
|
|
||||||
settings.beginGroup("Settings");
|
settings.beginGroup(SETTINGS_SETTINGS_GROUP);
|
||||||
settings.setValue("units", _imperialUnitsAction->isChecked()
|
settings.setValue(UNITS_SETTING, _imperialUnitsAction->isChecked()
|
||||||
? Imperial : Metric);
|
? Imperial : Metric);
|
||||||
settings.setValue("toolbar", _showToolbarsAction->isChecked());
|
settings.setValue(SHOW_TOOLBARS_SETTING, _showToolbarsAction->isChecked());
|
||||||
settings.setValue("graphs", _showGraphsAction->isChecked());
|
settings.setValue(SHOW_GRAPHS_SETTING, _showGraphsAction->isChecked());
|
||||||
settings.endGroup();
|
settings.endGroup();
|
||||||
|
|
||||||
settings.beginGroup("Map");
|
settings.beginGroup(MAP_SETTINGS_GROUP);
|
||||||
settings.setValue("map", _currentMap->name());
|
if (_currentMap)
|
||||||
settings.setValue("show", _showMapAction->isChecked());
|
settings.setValue(CURRENT_MAP_SETTING, _currentMap->name());
|
||||||
|
settings.setValue(SHOW_MAP_SETTING, _showMapAction->isChecked());
|
||||||
settings.endGroup();
|
settings.endGroup();
|
||||||
|
|
||||||
settings.beginGroup("POI");
|
settings.beginGroup(POI_SETTINGS_GROUP);
|
||||||
settings.setValue("show", _showPOIAction->isChecked());
|
settings.setValue(SHOW_POI_SETTING, _showPOIAction->isChecked());
|
||||||
|
|
||||||
|
settings.remove(DISABLED_POI_FILE_SETTINGS_PREFIX);
|
||||||
|
settings.beginWriteArray(DISABLED_POI_FILE_SETTINGS_PREFIX);
|
||||||
|
for (int i = 0, j = 0; i < _poiFilesActions.count(); i++) {
|
||||||
|
if (!_poiFilesActions.at(i)->isChecked()) {
|
||||||
|
settings.setArrayIndex(j++);
|
||||||
|
settings.setValue(DISABLED_POI_FILE_SETTING, _poi.files().at(i));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
settings.endArray();
|
||||||
settings.endGroup();
|
settings.endGroup();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1090,34 +1101,34 @@ void GUI::readSettings()
|
|||||||
{
|
{
|
||||||
QSettings settings(APP_NAME, APP_NAME);
|
QSettings settings(APP_NAME, APP_NAME);
|
||||||
|
|
||||||
settings.beginGroup("Window");
|
settings.beginGroup(WINDOW_SETTINGS_GROUP);
|
||||||
resize(settings.value("size", QSize(600, 800)).toSize());
|
resize(settings.value(WINDOW_SIZE_SETTING, QSize(600, 800)).toSize());
|
||||||
move(settings.value("pos", QPoint(10, 10)).toPoint());
|
move(settings.value(WINDOW_POS_SETTING, QPoint(10, 10)).toPoint());
|
||||||
settings.endGroup();
|
settings.endGroup();
|
||||||
|
|
||||||
settings.beginGroup("Settings");
|
settings.beginGroup(SETTINGS_SETTINGS_GROUP);
|
||||||
if (settings.value("units", Metric).toInt() == Imperial) {
|
if (settings.value(UNITS_SETTING, Metric).toInt() == Imperial) {
|
||||||
setImperialUnits();
|
setImperialUnits();
|
||||||
_imperialUnitsAction->setChecked(true);
|
_imperialUnitsAction->setChecked(true);
|
||||||
} else
|
} else
|
||||||
_metricUnitsAction->setChecked(true);
|
_metricUnitsAction->setChecked(true);
|
||||||
if (settings.value("toolbar", true).toBool() == false) {
|
if (settings.value(SHOW_TOOLBARS_SETTING, true).toBool() == false) {
|
||||||
showToolbars(false);
|
showToolbars(false);
|
||||||
_showToolbarsAction->setChecked(false);
|
_showToolbarsAction->setChecked(false);
|
||||||
} else
|
} else
|
||||||
_showToolbarsAction->setChecked(true);
|
_showToolbarsAction->setChecked(true);
|
||||||
if (settings.value("graphs", true).toBool() == false) {
|
if (settings.value(SHOW_GRAPHS_SETTING, true).toBool() == false) {
|
||||||
showGraphs(false);
|
showGraphs(false);
|
||||||
_showGraphsAction->setChecked(false);
|
_showGraphsAction->setChecked(false);
|
||||||
} else
|
} else
|
||||||
_showGraphsAction->setChecked(true);
|
_showGraphsAction->setChecked(true);
|
||||||
settings.endGroup();
|
settings.endGroup();
|
||||||
|
|
||||||
settings.beginGroup("Map");
|
settings.beginGroup(MAP_SETTINGS_GROUP);
|
||||||
if (settings.value("show", true).toBool() == true)
|
if (settings.value(SHOW_MAP_SETTING, true).toBool() == true)
|
||||||
_showMapAction->setChecked(true);
|
_showMapAction->setChecked(true);
|
||||||
if (_maps.count()) {
|
if (_maps.count()) {
|
||||||
int index = mapIndex(settings.value("map").toString());
|
int index = mapIndex(settings.value(CURRENT_MAP_SETTING).toString());
|
||||||
_mapActions.at(index)->setChecked(true);
|
_mapActions.at(index)->setChecked(true);
|
||||||
_currentMap = _maps.at(index);
|
_currentMap = _maps.at(index);
|
||||||
if (_showMapAction->isChecked())
|
if (_showMapAction->isChecked())
|
||||||
@ -1126,9 +1137,22 @@ void GUI::readSettings()
|
|||||||
_currentMap = 0;
|
_currentMap = 0;
|
||||||
settings.endGroup();
|
settings.endGroup();
|
||||||
|
|
||||||
settings.beginGroup("POI");
|
settings.beginGroup(POI_SETTINGS_GROUP);
|
||||||
if (settings.value("show", false).toBool() == true)
|
if (settings.value(SHOW_POI_SETTING, false).toBool() == true)
|
||||||
_showPOIAction->setChecked(true);
|
_showPOIAction->setChecked(true);
|
||||||
|
for (int i = 0; i < _poiFilesActions.count(); i++)
|
||||||
|
_poiFilesActions.at(i)->setChecked(true);
|
||||||
|
int size = settings.beginReadArray(DISABLED_POI_FILE_SETTINGS_PREFIX);
|
||||||
|
for (int i = 0; i < size; i++) {
|
||||||
|
settings.setArrayIndex(i);
|
||||||
|
int index = _poi.files().indexOf(settings.value(
|
||||||
|
DISABLED_POI_FILE_SETTING).toString());
|
||||||
|
if (index >= 0) {
|
||||||
|
_poi.enableFile(_poi.files().at(index), false);
|
||||||
|
_poiFilesActions.at(index)->setChecked(false);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
settings.endArray();
|
||||||
settings.endGroup();
|
settings.endGroup();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
22
src/settings.h
Normal file
22
src/settings.h
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
#ifndef SETTINGS_H
|
||||||
|
#define SETTINGS_H
|
||||||
|
|
||||||
|
#define WINDOW_SETTINGS_GROUP "Window"
|
||||||
|
#define WINDOW_SIZE_SETTING "size"
|
||||||
|
#define WINDOW_POS_SETTING "pos"
|
||||||
|
|
||||||
|
#define SETTINGS_SETTINGS_GROUP "Settings"
|
||||||
|
#define UNITS_SETTING "units"
|
||||||
|
#define SHOW_TOOLBARS_SETTING "toolbar"
|
||||||
|
#define SHOW_GRAPHS_SETTING "graphs"
|
||||||
|
|
||||||
|
#define MAP_SETTINGS_GROUP "Map"
|
||||||
|
#define CURRENT_MAP_SETTING "map"
|
||||||
|
#define SHOW_MAP_SETTING "show"
|
||||||
|
|
||||||
|
#define POI_SETTINGS_GROUP "POI"
|
||||||
|
#define SHOW_POI_SETTING "show"
|
||||||
|
#define DISABLED_POI_FILE_SETTINGS_PREFIX "disabled"
|
||||||
|
#define DISABLED_POI_FILE_SETTING "file"
|
||||||
|
|
||||||
|
#endif // SETTINGS_H
|
Loading…
x
Reference in New Issue
Block a user