forked from qt-creator/qt-creator
Change-Id: Iee55eeaa881dd9f2047fdbe95ad8d827f4ba34e0 Reviewed-by: Marcus Tillmanns <marcus.tillmanns@qt.io>
38 lines
912 B
C++
38 lines
912 B
C++
// Copyright (C) 2018 The Qt Company Ltd.
|
|
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
|
|
|
|
#pragma once
|
|
|
|
#include <utils/id.h>
|
|
#include <utils/settingsaccessor.h>
|
|
#include <utils/store.h>
|
|
|
|
namespace CMakeProjectManager {
|
|
|
|
class CMakeTool;
|
|
|
|
namespace Internal {
|
|
|
|
class CMakeToolSettingsAccessor : public Utils::UpgradingSettingsAccessor
|
|
{
|
|
public:
|
|
CMakeToolSettingsAccessor();
|
|
|
|
struct CMakeTools {
|
|
Utils::Id defaultToolId;
|
|
std::vector<std::unique_ptr<CMakeTool>> cmakeTools;
|
|
};
|
|
|
|
CMakeTools restoreCMakeTools(QWidget *parent) const;
|
|
|
|
void saveCMakeTools(const QList<CMakeTool *> &cmakeTools,
|
|
const Utils::Id &defaultId,
|
|
QWidget *parent);
|
|
|
|
private:
|
|
CMakeTools cmakeTools(const Utils::Store &data, bool fromSdk) const;
|
|
};
|
|
|
|
} // namespace Internal
|
|
} // namespace CMakeProjectManager
|