KProperty

KPropertyListData.h
1/* This file is part of the KDE project
2 Copyright (C) 2004 Cedric Pasteur <cedric.pasteur@free.fr>
3 Copyright (C) 2004 Alexander Dymo <cloudtemple@mskat.net>
4 Copyright (C) 2004-2017 Jarosław Staniek <staniek@kde.org>
5
6 This library is free software; you can redistribute it and/or
7 modify it under the terms of the GNU Library General Public
8 License as published by the Free Software Foundation; either
9 version 2 of the License, or (at your option) any later version.
10
11 This library is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 Library General Public License for more details.
15
16 You should have received a copy of the GNU Library General Public License
17 along with this library; see the file COPYING.LIB. If not, write to
18 the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19 * Boston, MA 02110-1301, USA.
20*/
21
22#ifndef KPROPERTY_PROPERTYLISTDATA_H
23#define KPROPERTY_PROPERTYLISTDATA_H
24
25#include "kpropertycore_export.h"
26
27#include <QVariantList>
28
29/**
30 * @brief A data container for properties of list type.
31 *
32 * @since 3.1
33 */
34class KPROPERTYCORE_EXPORT KPropertyListData
35{
36public:
38
40
41 KPropertyListData(const QStringList& keys, const QStringList& names);
42
43 KPropertyListData(const QVariantList &keys, const QVariantList &names);
44
45 KPropertyListData(const QVariantList &keys, const QStringList &names);
46
48
49 //! Assigns @a other to this KPropertyListData
50 KPropertyListData& operator=(const KPropertyListData &other);
51
52 //! @return true if this KPropertyListData equals to @a other
53 bool operator==(const KPropertyListData &other) const;
54
55 //! @return true if this KPropertyListData does not equal to @a other
56 inline bool operator!=(const KPropertyListData &other) const { return !operator==(other); }
57
58 /**
59 * @brief A list containing all possible keys for a property
60 *
61 * Items of this list are ordered, so the first key element is associated with first element
62 * from the 'names' list, and so on.
63 */
64 QVariantList keys() const;
65
66 /**
67 * @brief A list containing all possible keys for a property converted to strings
68 */
69 QStringList keysAsStringList() const;
70
71 /**
72 * Sets a list containing all possible keys for a property
73 *
74 * @note each key on the list should be unique
75 */
76 void setKeys(const QVariantList &keys);
77
78 /**
79 * Sets a list containing all possible keys for a property as strings
80 *
81 * @note each key on the list should be unique
82 */
83 void setKeysAsStringList(const QStringList &keys);
84
85 /**
86 * @brief The list of user-visible translated name elements
87 *
88 * First value is referenced by first key, and so on.
89 */
90 QVariantList names() const;
91
92 /**
93 * @brief The list of user-visible translated name elements as strings
94 */
95 QStringList namesAsStringList() const;
96
97 /**
98 * Sets a list containing all possible keys for a property
99 *
100 * @note each key on the list should be unique
101 */
102 void setNames(const QVariantList &names);
103
104 /**
105 * Sets a list containing all possible keys for a property as strings
106 *
107 * @note each key on the list should be unique
108 */
109 void setNamesAsStringList(const QStringList &names);
110
111private:
112 class Private;
113 Private * const d;
114};
115
116#endif
A data container for properties of list type.
bool operator!=(const KPropertyListData &other) const
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Sun Feb 25 2024 18:41:55 by doxygen 1.10.0 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.