/**************************************************************************** * * (c) 2009-2016 QGROUNDCONTROL PROJECT * * QGroundControl is licensed according to the terms in the file * COPYING.md in the root of the source code directory. * ****************************************************************************/ #include "AppSettings.h" #include #include const char* AppSettings::appSettingsGroupName = "App"; const char* AppSettings::offlineEditingFirmwareTypeSettingsName = "OfflineEditingFirmwareType"; const char* AppSettings::offlineEditingVehicleTypeSettingsName = "OfflineEditingVehicleType"; const char* AppSettings::offlineEditingCruiseSpeedSettingsName = "OfflineEditingCruiseSpeed"; const char* AppSettings::offlineEditingHoverSpeedSettingsName = "OfflineEditingHoverSpeed"; const char* AppSettings::batteryPercentRemainingAnnounceSettingsName = "batteryPercentRemainingAnnounce"; const char* AppSettings::defaultMissionItemAltitudeSettingsName = "DefaultMissionItemAltitude"; const char* AppSettings::missionAutoLoadDirSettingsName = "MissionAutoLoadDir"; const char* AppSettings::promptFlightTelemetrySaveName = "PromptFLightDataSave"; const char* AppSettings::promptFlightTelemetrySaveNotArmedName = "PromptFLightDataSaveNotArmed"; const char* AppSettings::audioMutedName = "AudioMuted"; AppSettings::AppSettings(QObject* parent) : SettingsGroup(appSettingsGroupName, QString() /* root settings group */, parent) , _offlineEditingFirmwareTypeFact(NULL) , _offlineEditingVehicleTypeFact(NULL) , _offlineEditingCruiseSpeedFact(NULL) , _offlineEditingHoverSpeedFact(NULL) , _batteryPercentRemainingAnnounceFact(NULL) , _defaultMissionItemAltitudeFact(NULL) , _missionAutoLoadDirFact(NULL) , _promptFlightTelemetrySave(NULL) , _promptFlightTelemetrySaveNotArmed(NULL) , _audioMuted(NULL) { QQmlEngine::setObjectOwnership(this, QQmlEngine::CppOwnership); qmlRegisterUncreatableType("QGroundControl.SettingsManager", 1, 0, "AppSettings", "Reference only"); } Fact* AppSettings::offlineEditingFirmwareType(void) { if (!_offlineEditingFirmwareTypeFact) { _offlineEditingFirmwareTypeFact = _createSettingsFact(offlineEditingFirmwareTypeSettingsName); } return _offlineEditingFirmwareTypeFact; } Fact* AppSettings::offlineEditingVehicleType(void) { if (!_offlineEditingVehicleTypeFact) { _offlineEditingVehicleTypeFact = _createSettingsFact(offlineEditingVehicleTypeSettingsName); } return _offlineEditingVehicleTypeFact; } Fact* AppSettings::offlineEditingCruiseSpeed(void) { if (!_offlineEditingCruiseSpeedFact) { _offlineEditingCruiseSpeedFact = _createSettingsFact(offlineEditingCruiseSpeedSettingsName); } return _offlineEditingCruiseSpeedFact; } Fact* AppSettings::offlineEditingHoverSpeed(void) { if (!_offlineEditingHoverSpeedFact) { _offlineEditingHoverSpeedFact = _createSettingsFact(offlineEditingHoverSpeedSettingsName); } return _offlineEditingHoverSpeedFact; } Fact* AppSettings::batteryPercentRemainingAnnounce(void) { if (!_batteryPercentRemainingAnnounceFact) { _batteryPercentRemainingAnnounceFact = _createSettingsFact(batteryPercentRemainingAnnounceSettingsName); } return _batteryPercentRemainingAnnounceFact; } Fact* AppSettings::defaultMissionItemAltitude(void) { if (!_defaultMissionItemAltitudeFact) { _defaultMissionItemAltitudeFact = _createSettingsFact(defaultMissionItemAltitudeSettingsName); } return _defaultMissionItemAltitudeFact; } Fact* AppSettings::missionAutoLoadDir(void) { if (!_missionAutoLoadDirFact) { _missionAutoLoadDirFact = _createSettingsFact(missionAutoLoadDirSettingsName); } return _missionAutoLoadDirFact; } Fact* AppSettings::promptFlightTelemetrySave(void) { if (!_promptFlightTelemetrySave) { _promptFlightTelemetrySave = _createSettingsFact(promptFlightTelemetrySaveName); } return _promptFlightTelemetrySave; } Fact* AppSettings::promptFlightTelemetrySaveNotArmed(void) { if (!_promptFlightTelemetrySaveNotArmed) { _promptFlightTelemetrySaveNotArmed = _createSettingsFact(promptFlightTelemetrySaveNotArmedName); } return _promptFlightTelemetrySaveNotArmed; } Fact* AppSettings::audioMuted(void) { if (!_audioMuted) { _audioMuted = _createSettingsFact(audioMutedName); } return _audioMuted; }