// This file is generated by kconfig_compiler from marble.kcfg.
// All changes you do to this file will be lost.

#include "settings.h"

#include <kglobal.h>
#include <QtCore/QFile>

class MarbleSettingsHelper
{
  public:
    MarbleSettingsHelper() : q(0) {}
    ~MarbleSettingsHelper() { delete q; }
    MarbleSettings *q;
};
K_GLOBAL_STATIC(MarbleSettingsHelper, s_globalMarbleSettings)
MarbleSettings *MarbleSettings::self()
{
  if (!s_globalMarbleSettings->q) {
    new MarbleSettings;
    s_globalMarbleSettings->q->readConfig();
  }

  return s_globalMarbleSettings->q;
}

MarbleSettings::MarbleSettings(  )
  : KConfigSkeleton( QLatin1String( "marblerc" ) )
{
  Q_ASSERT(!s_globalMarbleSettings->q);
  s_globalMarbleSettings->q = this;
  setCurrentGroup( QLatin1String( "MarbleWidget" ) );

  KConfigSkeleton::ItemDouble  *itemHomeLongitude;
  itemHomeLongitude = new KConfigSkeleton::ItemDouble( currentGroup(), QLatin1String( "homeLongitude" ), mHomeLongitude, 9.4 );
  addItem( itemHomeLongitude, QLatin1String( "homeLongitude" ) );
  KConfigSkeleton::ItemDouble  *itemHomeLatitude;
  itemHomeLatitude = new KConfigSkeleton::ItemDouble( currentGroup(), QLatin1String( "homeLatitude" ), mHomeLatitude, 54.8 );
  addItem( itemHomeLatitude, QLatin1String( "homeLatitude" ) );
  KConfigSkeleton::ItemInt  *itemHomeZoom;
  itemHomeZoom = new KConfigSkeleton::ItemInt( currentGroup(), QLatin1String( "homeZoom" ), mHomeZoom, 1050 );
  addItem( itemHomeZoom, QLatin1String( "homeZoom" ) );
  KConfigSkeleton::ItemDouble  *itemQuitLongitude;
  itemQuitLongitude = new KConfigSkeleton::ItemDouble( currentGroup(), QLatin1String( "quitLongitude" ), mQuitLongitude, 0.0 );
  addItem( itemQuitLongitude, QLatin1String( "quitLongitude" ) );
  KConfigSkeleton::ItemDouble  *itemQuitLatitude;
  itemQuitLatitude = new KConfigSkeleton::ItemDouble( currentGroup(), QLatin1String( "quitLatitude" ), mQuitLatitude, 0.0 );
  addItem( itemQuitLatitude, QLatin1String( "quitLatitude" ) );
  KConfigSkeleton::ItemDouble  *itemQuitRange;
  itemQuitRange = new KConfigSkeleton::ItemDouble( currentGroup(), QLatin1String( "quitRange" ), mQuitRange, 11564500 );
  addItem( itemQuitRange, QLatin1String( "quitRange" ) );
  KConfigSkeleton::ItemString  *itemMapTheme;
  itemMapTheme = new KConfigSkeleton::ItemString( currentGroup(), QLatin1String( "mapTheme" ), mMapTheme );
  addItem( itemMapTheme, QLatin1String( "mapTheme" ) );
  KConfigSkeleton::ItemBool  *itemShowClouds;
  itemShowClouds = new KConfigSkeleton::ItemBool( currentGroup(), QLatin1String( "showClouds" ), mShowClouds, true );
  addItem( itemShowClouds, QLatin1String( "showClouds" ) );
  KConfigSkeleton::ItemBool  *itemWorkOffline;
  itemWorkOffline = new KConfigSkeleton::ItemBool( currentGroup(), QLatin1String( "workOffline" ), mWorkOffline, false );
  addItem( itemWorkOffline, QLatin1String( "workOffline" ) );
  KConfigSkeleton::ItemBool  *itemShowCurrentLocation;
  itemShowCurrentLocation = new KConfigSkeleton::ItemBool( currentGroup(), QLatin1String( "showCurrentLocation" ), mShowCurrentLocation, false );
  addItem( itemShowCurrentLocation, QLatin1String( "showCurrentLocation" ) );
  KConfigSkeleton::ItemBool  *itemLockFloatItemPositions;
  itemLockFloatItemPositions = new KConfigSkeleton::ItemBool( currentGroup(), QLatin1String( "lockFloatItemPositions" ), mLockFloatItemPositions, false );
  addItem( itemLockFloatItemPositions, QLatin1String( "lockFloatItemPositions" ) );
  KConfigSkeleton::ItemInt  *itemProjection;
  itemProjection = new KConfigSkeleton::ItemInt( currentGroup(), QLatin1String( "projection" ), mProjection, 0 );
  addItem( itemProjection, QLatin1String( "projection" ) );
  KConfigSkeleton::ItemPath  *itemMarbleDataPath;
  itemMarbleDataPath = new KConfigSkeleton::ItemPath( currentGroup(), QLatin1String( "marbleDataPath" ), mMarbleDataPath );
  addItem( itemMarbleDataPath, QLatin1String( "marbleDataPath" ) );
  KConfigSkeleton::ItemBool  *itemShowBookmarks;
  itemShowBookmarks = new KConfigSkeleton::ItemBool( currentGroup(), QLatin1String( "showBookmarks" ), mShowBookmarks, true );
  addItem( itemShowBookmarks, QLatin1String( "showBookmarks" ) );

  setCurrentGroup( QLatin1String( "Time" ) );

  KConfigSkeleton::ItemDateTime  *itemDateTime;
  itemDateTime = new KConfigSkeleton::ItemDateTime( currentGroup(), QLatin1String( "dateTime" ), mDateTime );
  addItem( itemDateTime, QLatin1String( "dateTime" ) );
  KConfigSkeleton::ItemInt  *itemSpeedSlider;
  itemSpeedSlider = new KConfigSkeleton::ItemInt( currentGroup(), QLatin1String( "speedSlider" ), mSpeedSlider, 1 );
  itemSpeedSlider->setMinValue(-100);
  itemSpeedSlider->setMaxValue(100);
  addItem( itemSpeedSlider, QLatin1String( "speedSlider" ) );
  KConfigSkeleton::ItemBool  *itemSystemTime;
  itemSystemTime = new KConfigSkeleton::ItemBool( currentGroup(), QLatin1String( "systemTime" ), mSystemTime, true );
  addItem( itemSystemTime, QLatin1String( "systemTime" ) );
  KConfigSkeleton::ItemBool  *itemLastSessionTime;
  itemLastSessionTime = new KConfigSkeleton::ItemBool( currentGroup(), QLatin1String( "lastSessionTime" ), mLastSessionTime, false );
  addItem( itemLastSessionTime, QLatin1String( "lastSessionTime" ) );
  KConfigSkeleton::ItemBool  *itemSystemTimezone;
  itemSystemTimezone = new KConfigSkeleton::ItemBool( currentGroup(), QLatin1String( "systemTimezone" ), mSystemTimezone, true );
  addItem( itemSystemTimezone, QLatin1String( "systemTimezone" ) );
  KConfigSkeleton::ItemBool  *itemUtc;
  itemUtc = new KConfigSkeleton::ItemBool( currentGroup(), QLatin1String( "utc" ), mUtc, false );
  addItem( itemUtc, QLatin1String( "utc" ) );
  KConfigSkeleton::ItemBool  *itemCustomTimezone;
  itemCustomTimezone = new KConfigSkeleton::ItemBool( currentGroup(), QLatin1String( "customTimezone" ), mCustomTimezone, false );
  addItem( itemCustomTimezone, QLatin1String( "customTimezone" ) );
  KConfigSkeleton::ItemInt  *itemChosenTimezone;
  itemChosenTimezone = new KConfigSkeleton::ItemInt( currentGroup(), QLatin1String( "chosenTimezone" ), mChosenTimezone, 0 );
  addItem( itemChosenTimezone, QLatin1String( "chosenTimezone" ) );

  setCurrentGroup( QLatin1String( "Tracking" ) );

  KConfigSkeleton::ItemBool  *itemAutoCenter;
  itemAutoCenter = new KConfigSkeleton::ItemBool( currentGroup(), QLatin1String( "autoCenter" ), mAutoCenter, false );
  addItem( itemAutoCenter, QLatin1String( "autoCenter" ) );
  KConfigSkeleton::ItemBool  *itemTrackVisible;
  itemTrackVisible = new KConfigSkeleton::ItemBool( currentGroup(), QLatin1String( "trackVisible" ), mTrackVisible, true );
  addItem( itemTrackVisible, QLatin1String( "trackVisible" ) );
  KConfigSkeleton::ItemString  *itemLastTrackOpenPath;
  itemLastTrackOpenPath = new KConfigSkeleton::ItemString( currentGroup(), QLatin1String( "lastTrackOpenPath" ), mLastTrackOpenPath, QDir::homePath() );
  addItem( itemLastTrackOpenPath, QLatin1String( "lastTrackOpenPath" ) );
  KConfigSkeleton::ItemString  *itemLastTrackSavePath;
  itemLastTrackSavePath = new KConfigSkeleton::ItemString( currentGroup(), QLatin1String( "lastTrackSavePath" ), mLastTrackSavePath, QDir::homePath() );
  addItem( itemLastTrackSavePath, QLatin1String( "lastTrackSavePath" ) );
  KConfigSkeleton::ItemBool  *itemAutoZoom;
  itemAutoZoom = new KConfigSkeleton::ItemBool( currentGroup(), QLatin1String( "autoZoom" ), mAutoZoom, false );
  addItem( itemAutoZoom, QLatin1String( "autoZoom" ) );
  KConfigSkeleton::ItemInt  *itemRecenterMode;
  itemRecenterMode = new KConfigSkeleton::ItemInt( currentGroup(), QLatin1String( "recenterMode" ), mRecenterMode, 0 );
  addItem( itemRecenterMode, QLatin1String( "recenterMode" ) );

  setCurrentGroup( QLatin1String( "View" ) );

  QList<KConfigSkeleton::ItemEnum::Choice2> valuesdistanceUnit;
  {
    KConfigSkeleton::ItemEnum::Choice2 choice;
    choice.name = QLatin1String("MeasurementSystem::MetricSystem");
    valuesdistanceUnit.append( choice );
  }
  {
    KConfigSkeleton::ItemEnum::Choice2 choice;
    choice.name = QLatin1String("MeasurementSystem::ImperialSystem");
    valuesdistanceUnit.append( choice );
  }
  KConfigSkeleton::ItemEnum  *itemDistanceUnit;
  itemDistanceUnit = new KConfigSkeleton::ItemEnum( currentGroup(), QLatin1String( "distanceUnit" ), mDistanceUnit, valuesdistanceUnit, QLocale::MetricSystem );
  addItem( itemDistanceUnit, QLatin1String( "distanceUnit" ) );
  QList<KConfigSkeleton::ItemEnum::Choice2> valuesangleUnit;
  {
    KConfigSkeleton::ItemEnum::Choice2 choice;
    choice.name = QLatin1String("AngleUnit::DMSDegree");
    valuesangleUnit.append( choice );
  }
  {
    KConfigSkeleton::ItemEnum::Choice2 choice;
    choice.name = QLatin1String("AngleUnit::DecimalDegree");
    valuesangleUnit.append( choice );
  }
  {
    KConfigSkeleton::ItemEnum::Choice2 choice;
    choice.name = QLatin1String("AngleUnit::UTM");
    valuesangleUnit.append( choice );
  }
  KConfigSkeleton::ItemEnum  *itemAngleUnit;
  itemAngleUnit = new KConfigSkeleton::ItemEnum( currentGroup(), QLatin1String( "angleUnit" ), mAngleUnit, valuesangleUnit, Marble::DMSDegree );
  addItem( itemAngleUnit, QLatin1String( "angleUnit" ) );
  QList<KConfigSkeleton::ItemEnum::Choice2> valuesstillQuality;
  {
    KConfigSkeleton::ItemEnum::Choice2 choice;
    choice.name = QLatin1String("MapQuality::OutlineQuality");
    valuesstillQuality.append( choice );
  }
  {
    KConfigSkeleton::ItemEnum::Choice2 choice;
    choice.name = QLatin1String("MapQuality::LowQuality");
    valuesstillQuality.append( choice );
  }
  {
    KConfigSkeleton::ItemEnum::Choice2 choice;
    choice.name = QLatin1String("MapQuality::NormalQuality");
    valuesstillQuality.append( choice );
  }
  {
    KConfigSkeleton::ItemEnum::Choice2 choice;
    choice.name = QLatin1String("MapQuality::HighQuality");
    valuesstillQuality.append( choice );
  }
  {
    KConfigSkeleton::ItemEnum::Choice2 choice;
    choice.name = QLatin1String("MapQuality::PrintQuality");
    valuesstillQuality.append( choice );
  }
  KConfigSkeleton::ItemEnum  *itemStillQuality;
  itemStillQuality = new KConfigSkeleton::ItemEnum( currentGroup(), QLatin1String( "stillQuality" ), mStillQuality, valuesstillQuality, Marble::HighQuality );
  addItem( itemStillQuality, QLatin1String( "stillQuality" ) );
  QList<KConfigSkeleton::ItemEnum::Choice2> valuesanimationQuality;
  {
    KConfigSkeleton::ItemEnum::Choice2 choice;
    choice.name = QLatin1String("MapQuality::OutlineQuality");
    valuesanimationQuality.append( choice );
  }
  {
    KConfigSkeleton::ItemEnum::Choice2 choice;
    choice.name = QLatin1String("MapQuality::LowQuality");
    valuesanimationQuality.append( choice );
  }
  {
    KConfigSkeleton::ItemEnum::Choice2 choice;
    choice.name = QLatin1String("MapQuality::NormalQuality");
    valuesanimationQuality.append( choice );
  }
  {
    KConfigSkeleton::ItemEnum::Choice2 choice;
    choice.name = QLatin1String("MapQuality::HighQuality");
    valuesanimationQuality.append( choice );
  }
  {
    KConfigSkeleton::ItemEnum::Choice2 choice;
    choice.name = QLatin1String("MapQuality::PrintQuality");
    valuesanimationQuality.append( choice );
  }
  KConfigSkeleton::ItemEnum  *itemAnimationQuality;
  itemAnimationQuality = new KConfigSkeleton::ItemEnum( currentGroup(), QLatin1String( "animationQuality" ), mAnimationQuality, valuesanimationQuality, Marble::LowQuality );
  addItem( itemAnimationQuality, QLatin1String( "animationQuality" ) );
  QList<KConfigSkeleton::ItemEnum::Choice2> valuesgraphicsSystem;
  {
    KConfigSkeleton::ItemEnum::Choice2 choice;
    choice.name = QLatin1String("NativeGraphics");
    valuesgraphicsSystem.append( choice );
  }
  {
    KConfigSkeleton::ItemEnum::Choice2 choice;
    choice.name = QLatin1String("RasterGraphics");
    valuesgraphicsSystem.append( choice );
  }
  {
    KConfigSkeleton::ItemEnum::Choice2 choice;
    choice.name = QLatin1String("OpenGLGraphics");
    valuesgraphicsSystem.append( choice );
  }
  KConfigSkeleton::ItemEnum  *itemGraphicsSystem;
  itemGraphicsSystem = new KConfigSkeleton::ItemEnum( currentGroup(), QLatin1String( "graphicsSystem" ), mGraphicsSystem, valuesgraphicsSystem, Marble::RasterGraphics );
  addItem( itemGraphicsSystem, QLatin1String( "graphicsSystem" ) );
  QList<KConfigSkeleton::ItemEnum::Choice2> valueslabelLocalization;
  {
    KConfigSkeleton::ItemEnum::Choice2 choice;
    choice.name = QLatin1String("LabelLocalization::CustomAndNative");
    valueslabelLocalization.append( choice );
  }
  {
    KConfigSkeleton::ItemEnum::Choice2 choice;
    choice.name = QLatin1String("LabelLocalization::Custom");
    valueslabelLocalization.append( choice );
  }
  {
    KConfigSkeleton::ItemEnum::Choice2 choice;
    choice.name = QLatin1String("LabelLocalization::Native");
    valueslabelLocalization.append( choice );
  }
  KConfigSkeleton::ItemEnum  *itemLabelLocalization;
  itemLabelLocalization = new KConfigSkeleton::ItemEnum( currentGroup(), QLatin1String( "labelLocalization" ), mLabelLocalization, valueslabelLocalization, Marble::Native );
  addItem( itemLabelLocalization, QLatin1String( "labelLocalization" ) );
  KConfigSkeleton::ItemFont  *itemMapFont;
  itemMapFont = new KConfigSkeleton::ItemFont( currentGroup(), QLatin1String( "mapFont" ), mMapFont, KGlobalSettings::generalFont() );
  addItem( itemMapFont, QLatin1String( "mapFont" ) );
  KConfigSkeleton::ItemString  *itemLastFileOpenDir;
  itemLastFileOpenDir = new KConfigSkeleton::ItemString( currentGroup(), QLatin1String( "lastFileOpenDir" ), mLastFileOpenDir, QDir::homePath() );
  addItem( itemLastFileOpenDir, QLatin1String( "lastFileOpenDir" ) );

  setCurrentGroup( QLatin1String( "Sun" ) );

  KConfigSkeleton::ItemBool  *itemShowSun;
  itemShowSun = new KConfigSkeleton::ItemBool( currentGroup(), QLatin1String( "showSun" ), mShowSun, false );
  addItem( itemShowSun, QLatin1String( "showSun" ) );
  KConfigSkeleton::ItemBool  *itemShowCitylights;
  itemShowCitylights = new KConfigSkeleton::ItemBool( currentGroup(), QLatin1String( "showCitylights" ), mShowCitylights, false );
  addItem( itemShowCitylights, QLatin1String( "showCitylights" ) );
  KConfigSkeleton::ItemBool  *itemSubSolarPointIconVisible;
  itemSubSolarPointIconVisible = new KConfigSkeleton::ItemBool( currentGroup(), QLatin1String( "subSolarPointIconVisible" ), mSubSolarPointIconVisible, false );
  addItem( itemSubSolarPointIconVisible, QLatin1String( "subSolarPointIconVisible" ) );
  KConfigSkeleton::ItemBool  *itemLockToSubSolarPoint;
  itemLockToSubSolarPoint = new KConfigSkeleton::ItemBool( currentGroup(), QLatin1String( "lockToSubSolarPoint" ), mLockToSubSolarPoint, false );
  addItem( itemLockToSubSolarPoint, QLatin1String( "lockToSubSolarPoint" ) );

  setCurrentGroup( QLatin1String( "Navigation" ) );

  QList<KConfigSkeleton::ItemEnum::Choice2> valuesdragLocation;
  {
    KConfigSkeleton::ItemEnum::Choice2 choice;
    choice.name = QLatin1String("DragLocation::KeepAxisVertically");
    valuesdragLocation.append( choice );
  }
  {
    KConfigSkeleton::ItemEnum::Choice2 choice;
    choice.name = QLatin1String("DragLocation::FollowMousePointer");
    valuesdragLocation.append( choice );
  }
  KConfigSkeleton::ItemEnum  *itemDragLocation;
  itemDragLocation = new KConfigSkeleton::ItemEnum( currentGroup(), QLatin1String( "dragLocation" ), mDragLocation, valuesdragLocation, Marble::KeepAxisVertically );
  addItem( itemDragLocation, QLatin1String( "dragLocation" ) );
  QList<KConfigSkeleton::ItemEnum::Choice2> valuesonStartup;
  {
    KConfigSkeleton::ItemEnum::Choice2 choice;
    choice.name = QLatin1String("onStartup::ShowHomeLocation");
    valuesonStartup.append( choice );
  }
  {
    KConfigSkeleton::ItemEnum::Choice2 choice;
    choice.name = QLatin1String("onStartup::LastLocationVisited");
    valuesonStartup.append( choice );
  }
  KConfigSkeleton::ItemEnum  *itemOnStartup;
  itemOnStartup = new KConfigSkeleton::ItemEnum( currentGroup(), QLatin1String( "onStartup" ), mOnStartup, valuesonStartup, Marble::ShowHomeLocation );
  addItem( itemOnStartup, QLatin1String( "onStartup" ) );
  KConfigSkeleton::ItemBool  *itemInertialEarthRotation;
  itemInertialEarthRotation = new KConfigSkeleton::ItemBool( currentGroup(), QLatin1String( "inertialEarthRotation" ), mInertialEarthRotation, true );
  addItem( itemInertialEarthRotation, QLatin1String( "inertialEarthRotation" ) );
  KConfigSkeleton::ItemBool  *itemAnimateTargetVoyage;
  itemAnimateTargetVoyage = new KConfigSkeleton::ItemBool( currentGroup(), QLatin1String( "animateTargetVoyage" ), mAnimateTargetVoyage, false );
  addItem( itemAnimateTargetVoyage, QLatin1String( "animateTargetVoyage" ) );
  KConfigSkeleton::ItemInt  *itemExternalMapEditor;
  itemExternalMapEditor = new KConfigSkeleton::ItemInt( currentGroup(), QLatin1String( "externalMapEditor" ), mExternalMapEditor, 0 );
  addItem( itemExternalMapEditor, QLatin1String( "externalMapEditor" ) );

  setCurrentGroup( QLatin1String( "Cache" ) );

  KConfigSkeleton::ItemInt  *itemVolatileTileCacheLimit;
  itemVolatileTileCacheLimit = new KConfigSkeleton::ItemInt( currentGroup(), QLatin1String( "volatileTileCacheLimit" ), mVolatileTileCacheLimit, 100 );
  itemVolatileTileCacheLimit->setMinValue(0);
  itemVolatileTileCacheLimit->setMaxValue(999999);
  addItem( itemVolatileTileCacheLimit, QLatin1String( "volatileTileCacheLimit" ) );
  KConfigSkeleton::ItemInt  *itemPersistentTileCacheLimit;
  itemPersistentTileCacheLimit = new KConfigSkeleton::ItemInt( currentGroup(), QLatin1String( "persistentTileCacheLimit" ), mPersistentTileCacheLimit, 0 );
  itemPersistentTileCacheLimit->setMinValue(0);
  itemPersistentTileCacheLimit->setMaxValue(999999);
  addItem( itemPersistentTileCacheLimit, QLatin1String( "persistentTileCacheLimit" ) );
  KConfigSkeleton::ItemString  *itemProxyUrl;
  itemProxyUrl = new KConfigSkeleton::ItemString( currentGroup(), QLatin1String( "proxyUrl" ), mProxyUrl );
  addItem( itemProxyUrl, QLatin1String( "proxyUrl" ) );
  KConfigSkeleton::ItemInt  *itemProxyPort;
  itemProxyPort = new KConfigSkeleton::ItemInt( currentGroup(), QLatin1String( "proxyPort" ), mProxyPort, 8080 );
  itemProxyPort->setMinValue(0);
  itemProxyPort->setMaxValue(65535);
  addItem( itemProxyPort, QLatin1String( "proxyPort" ) );
  KConfigSkeleton::ItemString  *itemProxyUser;
  itemProxyUser = new KConfigSkeleton::ItemString( currentGroup(), QLatin1String( "proxyUser" ), mProxyUser );
  addItem( itemProxyUser, QLatin1String( "proxyUser" ) );
  KConfigSkeleton::ItemString  *itemProxyPass;
  itemProxyPass = new KConfigSkeleton::ItemString( currentGroup(), QLatin1String( "proxyPass" ), mProxyPass );
  addItem( itemProxyPass, QLatin1String( "proxyPass" ) );
  KConfigSkeleton::ItemBool  *itemProxyHttp;
  itemProxyHttp = new KConfigSkeleton::ItemBool( currentGroup(), QLatin1String( "proxyHttp" ), mProxyHttp, true );
  addItem( itemProxyHttp, QLatin1String( "proxyHttp" ) );
  QList<KConfigSkeleton::ItemEnum::Choice2> valuesproxyType;
  {
    KConfigSkeleton::ItemEnum::Choice2 choice;
    choice.name = QLatin1String("HttpProxy");
    valuesproxyType.append( choice );
  }
  {
    KConfigSkeleton::ItemEnum::Choice2 choice;
    choice.name = QLatin1String("Socks5Proxy");
    valuesproxyType.append( choice );
  }
  KConfigSkeleton::ItemEnum  *itemProxyType;
  itemProxyType = new KConfigSkeleton::ItemEnum( currentGroup(), QLatin1String( "proxyType" ), mProxyType, valuesproxyType, Marble::HttpProxy );
  addItem( itemProxyType, QLatin1String( "proxyType" ) );
  KConfigSkeleton::ItemBool  *itemProxySocks5;
  itemProxySocks5 = new KConfigSkeleton::ItemBool( currentGroup(), QLatin1String( "proxySocks5" ), mProxySocks5, false );
  addItem( itemProxySocks5, QLatin1String( "proxySocks5" ) );
  KConfigSkeleton::ItemBool  *itemProxyAuth;
  itemProxyAuth = new KConfigSkeleton::ItemBool( currentGroup(), QLatin1String( "proxyAuth" ), mProxyAuth, false );
  addItem( itemProxyAuth, QLatin1String( "proxyAuth" ) );

  setCurrentGroup( QLatin1String( "Plugins" ) );

  KConfigSkeleton::ItemString  *itemActivePositionTrackingPlugin;
  itemActivePositionTrackingPlugin = new KConfigSkeleton::ItemString( currentGroup(), QLatin1String( "activePositionTrackingPlugin" ), mActivePositionTrackingPlugin );
  addItem( itemActivePositionTrackingPlugin, QLatin1String( "activePositionTrackingPlugin" ) );

  setCurrentGroup( QLatin1String( "StatusBar" ) );

  KConfigSkeleton::ItemBool  *itemShowPositionLabel;
  itemShowPositionLabel = new KConfigSkeleton::ItemBool( currentGroup(), QLatin1String( "showPositionLabel" ), mShowPositionLabel, true );
  addItem( itemShowPositionLabel, QLatin1String( "showPositionLabel" ) );
  KConfigSkeleton::ItemBool  *itemShowAltitudeLabel;
  itemShowAltitudeLabel = new KConfigSkeleton::ItemBool( currentGroup(), QLatin1String( "showAltitudeLabel" ), mShowAltitudeLabel, true );
  addItem( itemShowAltitudeLabel, QLatin1String( "showAltitudeLabel" ) );
  KConfigSkeleton::ItemBool  *itemShowTileZoomLevelLabel;
  itemShowTileZoomLevelLabel = new KConfigSkeleton::ItemBool( currentGroup(), QLatin1String( "showTileZoomLevelLabel" ), mShowTileZoomLevelLabel, false );
  addItem( itemShowTileZoomLevelLabel, QLatin1String( "showTileZoomLevelLabel" ) );
  KConfigSkeleton::ItemBool  *itemShowDownloadProgressBar;
  itemShowDownloadProgressBar = new KConfigSkeleton::ItemBool( currentGroup(), QLatin1String( "showDownloadProgressBar" ), mShowDownloadProgressBar, true );
  addItem( itemShowDownloadProgressBar, QLatin1String( "showDownloadProgressBar" ) );
  KConfigSkeleton::ItemBool  *itemShowDateTimeLabel;
  itemShowDateTimeLabel = new KConfigSkeleton::ItemBool( currentGroup(), QLatin1String( "showDateTimeLabel" ), mShowDateTimeLabel, true );
  addItem( itemShowDateTimeLabel, QLatin1String( "showDateTimeLabel" ) );

  setCurrentGroup( QLatin1String( "MapWizard" ) );

  KConfigSkeleton::ItemStringList  *itemWmsServers;
  itemWmsServers = new KConfigSkeleton::ItemStringList( currentGroup(), QLatin1String( "wmsServers" ), mWmsServers );
  addItem( itemWmsServers, QLatin1String( "wmsServers" ) );
  KConfigSkeleton::ItemStringList  *itemStaticUrlServers;
  itemStaticUrlServers = new KConfigSkeleton::ItemStringList( currentGroup(), QLatin1String( "staticUrlServers" ), mStaticUrlServers );
  addItem( itemStaticUrlServers, QLatin1String( "staticUrlServers" ) );

  setCurrentGroup( QLatin1String( "Routing" ) );

  KConfigSkeleton::ItemBool  *itemShowGuidanceModeStartupWarning;
  itemShowGuidanceModeStartupWarning = new KConfigSkeleton::ItemBool( currentGroup(), QLatin1String( "showGuidanceModeStartupWarning" ), mShowGuidanceModeStartupWarning, true );
  addItem( itemShowGuidanceModeStartupWarning, QLatin1String( "showGuidanceModeStartupWarning" ) );
  KConfigSkeleton::ItemInt  *itemCurrentRoutingProfile;
  itemCurrentRoutingProfile = new KConfigSkeleton::ItemInt( currentGroup(), QLatin1String( "currentRoutingProfile" ), mCurrentRoutingProfile, 0 );
  addItem( itemCurrentRoutingProfile, QLatin1String( "currentRoutingProfile" ) );
  KConfigSkeleton::ItemColor  *itemRouteColorStandard;
  itemRouteColorStandard = new KConfigSkeleton::ItemColor( currentGroup(), QLatin1String( "routeColorStandard" ), mRouteColorStandard, Marble::Oxygen::skyBlue4 );
  addItem( itemRouteColorStandard, QLatin1String( "routeColorStandard" ) );
  KConfigSkeleton::ItemInt  *itemRouteAlphaStandard;
  itemRouteAlphaStandard = new KConfigSkeleton::ItemInt( currentGroup(), QLatin1String( "routeAlphaStandard" ), mRouteAlphaStandard, 200 );
  addItem( itemRouteAlphaStandard, QLatin1String( "routeAlphaStandard" ) );
  KConfigSkeleton::ItemColor  *itemRouteColorHighlighted;
  itemRouteColorHighlighted = new KConfigSkeleton::ItemColor( currentGroup(), QLatin1String( "routeColorHighlighted" ), mRouteColorHighlighted, Marble::Oxygen::seaBlue2 );
  addItem( itemRouteColorHighlighted, QLatin1String( "routeColorHighlighted" ) );
  KConfigSkeleton::ItemInt  *itemRouteAlphaHighlighted;
  itemRouteAlphaHighlighted = new KConfigSkeleton::ItemInt( currentGroup(), QLatin1String( "routeAlphaHighlighted" ), mRouteAlphaHighlighted, 200 );
  addItem( itemRouteAlphaHighlighted, QLatin1String( "routeAlphaHighlighted" ) );
  KConfigSkeleton::ItemColor  *itemRouteColorAlternative;
  itemRouteColorAlternative = new KConfigSkeleton::ItemColor( currentGroup(), QLatin1String( "routeColorAlternative" ), mRouteColorAlternative, Marble::Oxygen::aluminumGray4 );
  addItem( itemRouteColorAlternative, QLatin1String( "routeColorAlternative" ) );
  KConfigSkeleton::ItemInt  *itemRouteAlphaAlternative;
  itemRouteAlphaAlternative = new KConfigSkeleton::ItemInt( currentGroup(), QLatin1String( "routeAlphaAlternative" ), mRouteAlphaAlternative, 200 );
  addItem( itemRouteAlphaAlternative, QLatin1String( "routeAlphaAlternative" ) );

  setCurrentGroup( QLatin1String( "CloudSync" ) );

  KConfigSkeleton::ItemBool  *itemEnableSync;
  itemEnableSync = new KConfigSkeleton::ItemBool( currentGroup(), QLatin1String( "enableSync" ), mEnableSync, false );
  addItem( itemEnableSync, QLatin1String( "enableSync" ) );
  KConfigSkeleton::ItemString  *itemSyncBackend;
  itemSyncBackend = new KConfigSkeleton::ItemString( currentGroup(), QLatin1String( "syncBackend" ), mSyncBackend, QLatin1String( "owncloud" ) );
  addItem( itemSyncBackend, QLatin1String( "syncBackend" ) );
  KConfigSkeleton::ItemBool  *itemSyncBookmarks;
  itemSyncBookmarks = new KConfigSkeleton::ItemBool( currentGroup(), QLatin1String( "syncBookmarks" ), mSyncBookmarks, true );
  addItem( itemSyncBookmarks, QLatin1String( "syncBookmarks" ) );
  KConfigSkeleton::ItemBool  *itemSyncRoutes;
  itemSyncRoutes = new KConfigSkeleton::ItemBool( currentGroup(), QLatin1String( "syncRoutes" ), mSyncRoutes, true );
  addItem( itemSyncRoutes, QLatin1String( "syncRoutes" ) );
  KConfigSkeleton::ItemString  *itemOwncloudServer;
  itemOwncloudServer = new KConfigSkeleton::ItemString( currentGroup(), QLatin1String( "owncloudServer" ), mOwncloudServer );
  addItem( itemOwncloudServer, QLatin1String( "owncloudServer" ) );
  KConfigSkeleton::ItemString  *itemOwncloudUsername;
  itemOwncloudUsername = new KConfigSkeleton::ItemString( currentGroup(), QLatin1String( "owncloudUsername" ), mOwncloudUsername );
  addItem( itemOwncloudUsername, QLatin1String( "owncloudUsername" ) );
  KConfigSkeleton::ItemString  *itemOwncloudPassword;
  itemOwncloudPassword = new KConfigSkeleton::ItemString( currentGroup(), QLatin1String( "owncloudPassword" ), mOwncloudPassword );
  addItem( itemOwncloudPassword, QLatin1String( "owncloudPassword" ) );
  KConfigSkeleton::ItemBool  *itemAccessKWallet;
  itemAccessKWallet = new KConfigSkeleton::ItemBool( currentGroup(), QLatin1String( "accessKWallet" ), mAccessKWallet, true );
  addItem( itemAccessKWallet, QLatin1String( "accessKWallet" ) );
}

MarbleSettings::~MarbleSettings()
{
  if (!s_globalMarbleSettings.isDestroyed()) {
    s_globalMarbleSettings->q = 0;
  }
}

