2022-08-19 15:59:36 +02:00
|
|
|
// Copyright (C) 2018 The Qt Company Ltd.
|
2022-12-21 10:12:09 +01:00
|
|
|
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
|
2018-07-02 13:55:58 +02:00
|
|
|
|
|
|
|
|
#pragma once
|
|
|
|
|
|
2020-06-26 13:59:38 +02:00
|
|
|
#include <utils/id.h>
|
2018-07-02 13:55:58 +02:00
|
|
|
#include <utils/settingsaccessor.h>
|
|
|
|
|
|
|
|
|
|
namespace CMakeProjectManager {
|
|
|
|
|
|
|
|
|
|
class CMakeTool;
|
|
|
|
|
|
|
|
|
|
namespace Internal {
|
|
|
|
|
|
|
|
|
|
class CMakeToolSettingsAccessor : public Utils::UpgradingSettingsAccessor
|
|
|
|
|
{
|
|
|
|
|
public:
|
|
|
|
|
CMakeToolSettingsAccessor();
|
|
|
|
|
|
|
|
|
|
struct CMakeTools {
|
2020-06-26 13:59:38 +02:00
|
|
|
Utils::Id defaultToolId;
|
2018-07-02 13:55:58 +02:00
|
|
|
std::vector<std::unique_ptr<CMakeTool>> cmakeTools;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
CMakeTools restoreCMakeTools(QWidget *parent) const;
|
|
|
|
|
|
|
|
|
|
void saveCMakeTools(const QList<CMakeTool *> &cmakeTools,
|
2020-06-26 13:59:38 +02:00
|
|
|
const Utils::Id &defaultId,
|
2018-07-02 13:55:58 +02:00
|
|
|
QWidget *parent);
|
|
|
|
|
|
|
|
|
|
private:
|
|
|
|
|
CMakeTools cmakeTools(const QVariantMap &data, bool fromSdk) const;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
} // namespace Internal
|
|
|
|
|
} // namespace CMakeProjectManager
|