1// Copyright (C) 2016 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
3
4#ifndef PROPERTY_H
5#define PROPERTY_H
6
7#include "library/proitems.h"
8#include "propertyprinter.h"
9
10#include <qglobal.h>
11#include <qstring.h>
12#include <qhash.h>
13
14QT_BEGIN_NAMESPACE
15
16class QSettings;
17
18class QMakeProperty final
19{
20 QSettings *settings;
21 void initSettings();
22
23 QHash<ProKey, ProString> m_values;
24
25public:
26 QMakeProperty();
27 ~QMakeProperty();
28
29 void reload();
30
31 bool hasValue(const ProKey &);
32 ProString value(const ProKey &);
33
34 void setValue(QString, const QString &);
35 void remove(const QString &);
36
37 int queryProperty(const QStringList &optionProperties = QStringList(),
38 const PropertyPrinter &printer = qmakePropertyPrinter);
39 int setProperty(const QStringList &optionProperties);
40 void unsetProperty(const QStringList &optionProperties);
41};
42
43QT_END_NAMESPACE
44
45#endif // PROPERTY_H
46

source code of qtbase/qmake/property.h