OSDN Git Service

Updated project/solution files for Visual Studio 2010.
[lamexp/LameXP.git] / src / Model_Settings.h
index 2d92fe0..c65e34c 100644 (file)
@@ -1,6 +1,6 @@
 ///////////////////////////////////////////////////////////////////////////////
 // LameXP - Audio Encoder Front-End
-// Copyright (C) 2004-2014 LoRd_MuldeR <MuldeR2@GMX.de>
+// Copyright (C) 2004-2015 LoRd_MuldeR <MuldeR2@GMX.de>
 //
 // This program is free software; you can redistribute it and/or modify
 // it under the terms of the GNU General Public License as published by
@@ -22,6 +22,9 @@
 
 #pragma once
 
+#include <QMutex>
+#include <QScopedPointer>
+
 class QString;
 class SettingsCache;
 
@@ -176,8 +179,10 @@ public:
        LAMEXP_MAKE_OPTION_B(neroAACEnable2Pass)
        LAMEXP_MAKE_OPTION_B(neroAacNotificationsEnabled)
        LAMEXP_MAKE_OPTION_B(normalizationFilterEnabled)
-       LAMEXP_MAKE_OPTION_I(normalizationFilterEQMode)
+       LAMEXP_MAKE_OPTION_B(normalizationFilterDynamic)
+       LAMEXP_MAKE_OPTION_B(normalizationFilterCoupled)
        LAMEXP_MAKE_OPTION_I(normalizationFilterMaxVolume)
+       LAMEXP_MAKE_OPTION_I(normalizationFilterSize)
        LAMEXP_MAKE_OPTION_I(opusComplexity)
        LAMEXP_MAKE_OPTION_B(opusDisableResample)
        LAMEXP_MAKE_OPTION_I(opusFramesize)
@@ -201,13 +206,17 @@ public:
        void syncNow(void);
 
 private:
-       SettingsCache *m_configCache;
+       SettingsModel(const SettingsModel &other) {}
+       SettingsModel &operator=(const SettingsModel &other) { return *this; }
 
        QString initDirectory(const QString &path) const;
        QString defaultLanguage(void) const;
        QString defaultDirectory(void) const;
 
-       static QString *m_defaultLanguage;
+       SettingsCache *m_configCache;
+
+       mutable QMutex                  m_defaultLangLock;
+       mutable QScopedPointer<QString> m_defaultLanguage;
 };
 
 ///////////////////////////////////////////////////////////////////////////////