1/****************************************************************************
2**
3** Copyright (C) 2016 The Qt Company Ltd.
4** Contact: https://www.qt.io/licensing/
5**
6** This file is part of the Qt Designer of the Qt Toolkit.
7**
8** $QT_BEGIN_LICENSE:GPL-EXCEPT$
9** Commercial License Usage
10** Licensees holding valid commercial Qt licenses may use this file in
11** accordance with the commercial license agreement provided with the
12** Software or, alternatively, in accordance with the terms contained in
13** a written agreement between you and The Qt Company. For licensing terms
14** and conditions see https://www.qt.io/terms-conditions. For further
15** information use the contact form at https://www.qt.io/contact-us.
16**
17** GNU General Public License Usage
18** Alternatively, this file may be used under the terms of the GNU
19** General Public License version 3 as published by the Free Software
20** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT
21** included in the packaging of this file. Please review the following
22** information to ensure the GNU General Public License requirements will
23** be met: https://www.gnu.org/licenses/gpl-3.0.html.
24**
25** $QT_END_LICENSE$
26**
27****************************************************************************/
28
29#include "abstractintrospection_p.h"
30
31QT_BEGIN_NAMESPACE
32
33/*!
34 \class QDesignerMetaEnumInterface
35 \internal
36 \since 4.4
37
38 \brief QDesignerMetaEnumInterface is part of \QD's introspection interface and represents an enumeration.
39
40 \inmodule QtDesigner
41
42 The QDesignerMetaEnumInterface class provides meta-data about an enumerator.
43
44 \sa QDesignerMetaObjectInterface
45*/
46
47/*!
48 Constructs a QDesignerMetaEnumInterface object.
49*/
50
51QDesignerMetaEnumInterface::QDesignerMetaEnumInterface() = default;
52
53/*!
54 Destroys the QDesignerMetaEnumInterface object.
55*/
56QDesignerMetaEnumInterface::~QDesignerMetaEnumInterface() = default;
57
58/*!
59 \fn bool QDesignerMetaEnumInterface::isFlag() const
60
61 Returns true if this enumerator is used as a flag.
62*/
63
64/*!
65 \fn QString QDesignerMetaEnumInterface::key(int index) const
66
67 Returns the key with the given \a index.
68*/
69
70/*!
71 \fn int QDesignerMetaEnumInterface::keyCount() const
72
73 Returns the number of keys.
74*/
75
76/*!
77 \fn int QDesignerMetaEnumInterface::keyToValue(const QString &key) const
78
79 Returns the integer value of the given enumeration \a key, or -1 if \a key is not defined.
80*/
81
82/*!
83 \fn int QDesignerMetaEnumInterface::keysToValue(const QString &keys) const
84
85 Returns the value derived from combining together the values of the \a keys using the OR operator, or -1 if keys is not defined. Note that the strings in \a keys must be '|'-separated.
86*/
87
88/*!
89 \fn QString QDesignerMetaEnumInterface::name() const
90
91 Returns the name of the enumerator (without the scope).
92*/
93
94/*!
95 \fn QString QDesignerMetaEnumInterface::scope() const
96
97 Returns the scope this enumerator was declared in.
98*/
99
100/*!
101 \fn QString QDesignerMetaEnumInterface::separator() const
102
103 Returns the separator to be used when building enumeration names.
104*/
105
106/*!
107 \fn int QDesignerMetaEnumInterface::value(int index) const
108
109 Returns the value with the given \a index; or returns -1 if there is no such value.
110*/
111
112/*!
113 \fn QString QDesignerMetaEnumInterface::valueToKey(int value) const
114
115 Returns the string that is used as the name of the given enumeration \a value, or QString::null if value is not defined.
116*/
117
118/*!
119 \fn QString QDesignerMetaEnumInterface::valueToKeys(int value) const
120
121 Returns a byte array of '|'-separated keys that represents the given \a value.
122*/
123
124/*!
125 \class QDesignerMetaPropertyInterface
126 \internal
127 \since 4.4
128
129 \brief QDesignerMetaPropertyInterface is part of \QD's introspection interface and represents a property.
130
131 \inmodule QtDesigner
132
133 The QDesignerMetaPropertyInterface class provides meta-data about a property.
134
135 \sa QDesignerMetaObjectInterface
136*/
137
138/*!
139 Constructs a QDesignerMetaPropertyInterface object.
140*/
141
142QDesignerMetaPropertyInterface::QDesignerMetaPropertyInterface() = default;
143
144/*!
145 Destroys the QDesignerMetaPropertyInterface object.
146*/
147
148QDesignerMetaPropertyInterface::~QDesignerMetaPropertyInterface() = default;
149
150/*!
151 \enum QDesignerMetaPropertyInterface::Kind
152
153 This enum indicates whether the property is of a special type.
154
155 \value EnumKind The property is of an enumeration type
156 \value FlagKind The property is of an flag type
157 \value OtherKind The property is of another type
158 */
159
160/*!
161 \enum QDesignerMetaPropertyInterface::AccessFlag
162
163 These flags specify the access the property provides.
164
165 \value ReadAccess Property can be read
166 \value WriteAccess Property can be written
167 \value ResetAccess Property can be reset to a default value
168 */
169
170/*!
171 \enum QDesignerMetaPropertyInterface::Attribute
172
173 Various attributes of the property.
174
175 \value DesignableAttribute Property is designable (visible in \QD)
176 \value ScriptableAttribute Property is scriptable
177 \value StoredAttribute Property is stored, that is, not calculated
178 \value UserAttribute Property is the property that the user can edit for the QObject
179 */
180
181/*!
182 \fn const QDesignerMetaEnumInterface *QDesignerMetaPropertyInterface::enumerator() const
183
184 Returns the enumerator if this property's type is an enumerator type;
185*/
186
187/*!
188 \fn Kind QDesignerMetaPropertyInterface::kind() const
189
190 Returns the type of the property.
191*/
192
193/*!
194 \fn AccessFlags QDesignerMetaPropertyInterface::accessFlags() const
195
196 Returns a combination of access flags.
197*/
198
199/*!
200 \fn Attributes QDesignerMetaPropertyInterface::attributes(const QObject *object) const
201
202 Returns the attributes of the property for the gives \a object.
203*/
204
205/*!
206 \fn QVariant::Type QDesignerMetaPropertyInterface::type() const
207
208 Returns the type of the property.
209*/
210
211/*!
212 \fn QString QDesignerMetaPropertyInterface::name() const
213
214 Returns the name of the property.
215*/
216
217/*!
218 \fn QString QDesignerMetaPropertyInterface::typeName() const
219
220 Returns the name of this property's type.
221*/
222
223
224/*!
225 \fn int QDesignerMetaPropertyInterface::userType() const
226
227 Returns this property's user type.
228*/
229
230/*!
231 \fn bool QDesignerMetaPropertyInterface::hasSetter() const
232
233 Returns whether getter and setter methods exist for this property.
234*/
235
236/*!
237 \fn QVariant QDesignerMetaPropertyInterface::read(const QObject *object) const
238
239 Reads the property's value from the given \a object. Returns the value if it was able to read it; otherwise returns an invalid variant.
240*/
241
242/*!
243 \fn bool QDesignerMetaPropertyInterface::reset(QObject *object) const
244
245 Resets the property for the given \a object with a reset method. Returns true if the reset worked; otherwise returns false.
246*/
247
248/*!
249 \fn bool QDesignerMetaPropertyInterface::write(QObject *object, const QVariant &value) const
250
251 Writes \a value as the property's value to the given \a object. Returns true if the write succeeded; otherwise returns false.
252*/
253
254/*!
255 \class QDesignerMetaMethodInterface
256 \internal
257 \since 4.4
258
259 \brief QDesignerMetaMethodInterface is part of \QD's introspection interface and represents a member function.
260
261 \inmodule QtDesigner
262
263 The QDesignerMetaMethodInterface class provides meta-data about a member function.
264
265 \sa QDesignerMetaObjectInterface
266*/
267
268/*!
269 Constructs a QDesignerMetaMethodInterface object.
270*/
271
272QDesignerMetaMethodInterface::QDesignerMetaMethodInterface() = default;
273
274/*!
275 Destroys the QDesignerMetaMethodInterface object.
276*/
277
278QDesignerMetaMethodInterface::~QDesignerMetaMethodInterface() = default;
279
280/*!
281 \enum QDesignerMetaMethodInterface::MethodType
282
283 This enum specifies the type of the method
284
285 \value Method The function is a plain member function.
286 \value Signal The function is a signal.
287 \value Slot The function is a slot.
288 \value Constructor The function is a constructor.
289
290*/
291
292/*!
293 \enum QDesignerMetaMethodInterface::Access
294
295 This enum represents the access specification of the method
296
297 \value Private A private member function
298 \value Protected A protected member function
299 \value Public A public member function
300*/
301
302/*!
303 \fn QDesignerMetaMethodInterface::Access QDesignerMetaMethodInterface::access() const
304
305 Returns the access specification of this method.
306*/
307
308
309/*!
310 \fn QDesignerMetaMethodInterface::MethodType QDesignerMetaMethodInterface::methodType() const
311
312 Returns the type of this method.
313*/
314
315/*!
316 \fn QStringList QDesignerMetaMethodInterface::parameterNames() const
317
318 Returns a list of parameter names.
319*/
320
321/*!
322 \fn QStringList QDesignerMetaMethodInterface::parameterTypes() const
323
324 Returns a list of parameter types.
325*/
326
327/*!
328 \fn QString QDesignerMetaMethodInterface::signature() const
329
330 Returns the signature of this method.
331*/
332
333/*!
334 \fn QString QDesignerMetaMethodInterface::normalizedSignature() const
335
336 Returns the normalized signature of this method (suitable as signal/slot specification).
337*/
338
339
340/*!
341 \fn QString QDesignerMetaMethodInterface::tag() const
342
343 Returns the tag associated with this method.
344*/
345
346/*!
347 \fn QString QDesignerMetaMethodInterface::typeName() const
348
349 Returns the return type of this method, or an empty string if the return type is void.
350*/
351
352/*!
353 \class QDesignerMetaObjectInterface
354 \internal
355 \since 4.4
356
357 \brief QDesignerMetaObjectInterface is part of \QD's introspection interface and provides meta-information about Qt objects
358
359 \inmodule QtDesigner
360
361 The QDesignerMetaObjectInterface class provides meta-data about Qt objects. For a given object, it can be obtained
362 by querying QDesignerIntrospectionInterface.
363
364 \sa QDesignerIntrospectionInterface
365*/
366
367/*!
368 Constructs a QDesignerMetaObjectInterface object.
369*/
370
371QDesignerMetaObjectInterface::QDesignerMetaObjectInterface() = default;
372
373/*!
374 Destroys the QDesignerMetaObjectInterface object.
375*/
376
377QDesignerMetaObjectInterface::~QDesignerMetaObjectInterface() = default;
378
379/*!
380 \fn QString QDesignerMetaObjectInterface::className() const
381
382 Returns the class name.
383*/
384
385/*!
386 \fn const QDesignerMetaEnumInterface *QDesignerMetaObjectInterface::enumerator(int index) const
387
388 Returns the meta-data for the enumerator with the given \a index.
389*/
390
391/*!
392 \fn int QDesignerMetaObjectInterface::enumeratorCount() const
393
394 Returns the number of enumerators in this class.
395*/
396
397/*!
398 \fn int QDesignerMetaObjectInterface::enumeratorOffset() const
399
400 Returns the enumerator offset for this class; i.e. the index position of this class's first enumerator.
401*/
402
403/*!
404 \fn int QDesignerMetaObjectInterface::indexOfEnumerator(const QString &name) const
405
406 Finds enumerator \a name and returns its index; otherwise returns -1.
407*/
408
409/*!
410 \fn int QDesignerMetaObjectInterface::indexOfMethod(const QString &method) const
411
412 Finds \a method and returns its index; otherwise returns -1.
413*/
414
415/*!
416 \fn int QDesignerMetaObjectInterface::indexOfProperty(const QString &name) const
417
418 Finds property \a name and returns its index; otherwise returns -1.
419*/
420
421/*!
422 \fn int QDesignerMetaObjectInterface::indexOfSignal(const QString &signal) const
423
424 Finds \a signal and returns its index; otherwise returns -1.
425*/
426
427/*!
428 \fn int QDesignerMetaObjectInterface::indexOfSlot(const QString &slot) const
429
430 Finds \a slot and returns its index; otherwise returns -1.
431*/
432
433/*!
434 \fn const QDesignerMetaMethodInterface *QDesignerMetaObjectInterface::method(int index) const
435
436 Returns the meta-data for the method with the given \a index.
437*/
438
439/*!
440 \fn int QDesignerMetaObjectInterface::methodCount() const
441
442 Returns the number of methods in this class. These include ordinary methods, signals, and slots.
443*/
444
445/*!
446 \fn int QDesignerMetaObjectInterface::methodOffset() const
447
448 Returns the method offset for this class; i.e. the index position of this class's first member function.
449*/
450
451/*!
452 \fn const QDesignerMetaPropertyInterface *QDesignerMetaObjectInterface::property(int index) const
453
454 Returns the meta-data for the property with the given \a index.
455*/
456/*!
457 \fn int QDesignerMetaObjectInterface::propertyCount() const
458
459 Returns the number of properties in this class.
460*/
461/*!
462 \fn int QDesignerMetaObjectInterface::propertyOffset() const
463
464 Returns the property offset for this class; i.e. the index position of this class's first property.
465*/
466
467/*!
468 \fn const QDesignerMetaObjectInterface *QDesignerMetaObjectInterface::superClass() const
469
470 Returns the meta-object of the superclass, or 0 if there is no such object.
471*/
472
473/*!
474 \fn const QDesignerMetaPropertyInterface *QDesignerMetaObjectInterface::userProperty() const
475
476 Returns the property that has the USER flag set to true.
477*/
478
479/*!
480 \class QDesignerIntrospectionInterface
481 \internal
482 \since 4.4
483
484 \brief QDesignerIntrospectionInterface provides access to a QDesignerMetaObjectInterface for a given Qt object.
485
486 \inmodule QtDesigner
487
488 QDesignerIntrospectionInterface is the main class of \QD's introspection interface. These
489 interfaces provide a layer of abstraction around QMetaObject and related classes to allow for the integration
490 of other programming languages.
491
492 An instance of QDesignerIntrospectionInterface can be obtained from the core.
493
494 \sa QDesignerMetaObjectInterface
495*/
496
497/*!
498 Constructs a QDesignerIntrospectionInterface object.
499*/
500
501QDesignerIntrospectionInterface::QDesignerIntrospectionInterface()
502{
503}
504
505/*!
506 Destroys the QDesignerIntrospectionInterface object.
507*/
508
509QDesignerIntrospectionInterface::~QDesignerIntrospectionInterface()
510{
511}
512
513/*!
514 \fn const QDesignerMetaObjectInterface* QDesignerIntrospectionInterface::metaObject(const QObject *object) const
515
516 Returns the meta object of this \a object.
517*/
518
519QT_END_NAMESPACE
520

source code of qttools/src/designer/src/lib/sdk/abstractintrospection.cpp