forked from qt-creator/qt-creator
SettingsAccessor: Do not hard-code document type
Change-Id: Ied886eac9fcb4a9c58f088c32ee5ba0646b94fbc Reviewed-by: Marco Bubke <marco.bubke@qt.io>
This commit is contained in:
@@ -112,6 +112,7 @@ public:
|
||||
|
||||
std::vector<std::unique_ptr<VersionUpgrader>> m_upgraders;
|
||||
std::unique_ptr<PersistentSettingsWriter> m_writer;
|
||||
QString m_docType;
|
||||
QByteArray m_settingsId;
|
||||
QString m_displayName;
|
||||
QString m_applicationDisplayName;
|
||||
@@ -194,10 +195,13 @@ static FileName userFilePath(const Utils::FileName &projectFilePath, const QStri
|
||||
return result;
|
||||
}
|
||||
|
||||
SettingsAccessor::SettingsAccessor(const Utils::FileName &baseFile) :
|
||||
SettingsAccessor::SettingsAccessor(const Utils::FileName &baseFile, const QString &docType) :
|
||||
d(new SettingsAccessorPrivate)
|
||||
{
|
||||
QTC_CHECK(!baseFile.isEmpty());
|
||||
QTC_CHECK(!docType.isEmpty());
|
||||
|
||||
d->m_docType = docType;
|
||||
d->m_baseFile = baseFile;
|
||||
d->m_userSuffix = generateSuffix(QString::fromLocal8Bit(qgetenv("QTC_EXTENSION")), ".user");
|
||||
d->m_sharedSuffix = generateSuffix(QString::fromLocal8Bit(qgetenv("QTC_SHARED_EXTENSION")), ".shared");
|
||||
@@ -579,7 +583,7 @@ bool SettingsAccessor::saveSettings(const QVariantMap &map, QWidget *parent) con
|
||||
|
||||
FileName path = FileName::fromString(defaultFileName(d->m_userSuffix));
|
||||
if (!d->m_writer || d->m_writer->fileName() != path)
|
||||
d->m_writer = std::make_unique<PersistentSettingsWriter>(path, "QtCreatorProject");
|
||||
d->m_writer = std::make_unique<PersistentSettingsWriter>(path, d->m_docType);
|
||||
|
||||
return d->m_writer->save(data, parent);
|
||||
}
|
||||
|
@@ -61,7 +61,7 @@ class SettingsAccessorPrivate;
|
||||
class QTCREATOR_UTILS_EXPORT SettingsAccessor
|
||||
{
|
||||
public:
|
||||
explicit SettingsAccessor(const Utils::FileName &baseFile);
|
||||
explicit SettingsAccessor(const Utils::FileName &baseFile, const QString &docType);
|
||||
virtual ~SettingsAccessor();
|
||||
|
||||
QVariantMap restoreSettings(QWidget *parent) const;
|
||||
|
@@ -348,7 +348,7 @@ static QVariantMap processHandlerNodes(const HandlerNode &node, const QVariantMa
|
||||
// UserFileAccessor:
|
||||
// --------------------------------------------------------------------
|
||||
UserFileAccessor::UserFileAccessor(Project *project) :
|
||||
SettingsAccessor(project->projectFilePath()),
|
||||
SettingsAccessor(project->projectFilePath(), "QtCreatorProject"),
|
||||
m_project(project)
|
||||
{
|
||||
setSettingsId(ProjectExplorerPlugin::projectExplorerSettings().environmentId.toByteArray());
|
||||
|
@@ -75,7 +75,7 @@ class BasicTestSettingsAccessor : public Utils::SettingsAccessor
|
||||
public:
|
||||
BasicTestSettingsAccessor(const Utils::FileName &baseName = Utils::FileName::fromString("/foo/bar"),
|
||||
const QByteArray &id = QByteArray(TESTACCESSOR_DEFAULT_ID)) :
|
||||
Utils::SettingsAccessor(baseName)
|
||||
Utils::SettingsAccessor(baseName, "TestData")
|
||||
{
|
||||
setDisplayName(TESTACCESSOR_DN);
|
||||
setApplicationDisplayName(TESTACCESSOR_APPLICATION_DN);
|
||||
|
Reference in New Issue
Block a user