彻底改版2.0
This commit is contained in:
548
third/designer/lib/sdk/abstractintrospection.cpp
Normal file
548
third/designer/lib/sdk/abstractintrospection.cpp
Normal file
@@ -0,0 +1,548 @@
|
||||
/****************************************************************************
|
||||
**
|
||||
** Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies).
|
||||
** All rights reserved.
|
||||
** Contact: Nokia Corporation (qt-info@nokia.com)
|
||||
**
|
||||
** This file is part of the Qt Designer of the Qt Toolkit.
|
||||
**
|
||||
** $QT_BEGIN_LICENSE:LGPL$
|
||||
** Commercial Usage
|
||||
** Licensees holding valid Qt Commercial licenses may use this file in
|
||||
** accordance with the Qt Commercial License Agreement provided with the
|
||||
** Software or, alternatively, in accordance with the terms contained in
|
||||
** a written agreement between you and Nokia.
|
||||
**
|
||||
** GNU Lesser General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU Lesser
|
||||
** General Public License version 2.1 as published by the Free Software
|
||||
** Foundation and appearing in the file LICENSE.LGPL included in the
|
||||
** packaging of this file. Please review the following information to
|
||||
** ensure the GNU Lesser General Public License version 2.1 requirements
|
||||
** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
|
||||
**
|
||||
** In addition, as a special exception, Nokia gives you certain additional
|
||||
** rights. These rights are described in the Nokia Qt LGPL Exception
|
||||
** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
|
||||
**
|
||||
** GNU General Public License Usage
|
||||
** Alternatively, this file may be used under the terms of the GNU
|
||||
** General Public License version 3.0 as published by the Free Software
|
||||
** Foundation and appearing in the file LICENSE.GPL included in the
|
||||
** packaging of this file. Please review the following information to
|
||||
** ensure the GNU General Public License version 3.0 requirements will be
|
||||
** met: http://www.gnu.org/copyleft/gpl.html.
|
||||
**
|
||||
** If you have questions regarding the use of this file, please contact
|
||||
** Nokia at qt-info@nokia.com.
|
||||
** $QT_END_LICENSE$
|
||||
**
|
||||
****************************************************************************/
|
||||
|
||||
#include "abstractintrospection_p.h"
|
||||
|
||||
QT_BEGIN_NAMESPACE
|
||||
|
||||
/*!
|
||||
\class QDesignerMetaEnumInterface
|
||||
\internal
|
||||
\since 4.4
|
||||
|
||||
\brief QDesignerMetaEnumInterface is part of \QD's introspection interface and represents an enumeration.
|
||||
|
||||
\inmodule QtDesigner
|
||||
|
||||
The QDesignerMetaEnumInterface class provides meta-data about an enumerator.
|
||||
|
||||
\sa QDesignerMetaObjectInterface
|
||||
*/
|
||||
|
||||
/*!
|
||||
Constructs a QDesignerMetaEnumInterface object.
|
||||
*/
|
||||
|
||||
QDesignerMetaEnumInterface::QDesignerMetaEnumInterface()
|
||||
{
|
||||
}
|
||||
|
||||
/*!
|
||||
Destroys the QDesignerMetaEnumInterface object.
|
||||
*/
|
||||
QDesignerMetaEnumInterface::~QDesignerMetaEnumInterface()
|
||||
{
|
||||
}
|
||||
|
||||
/*!
|
||||
\fn bool QDesignerMetaEnumInterface::isFlag() const
|
||||
|
||||
Returns true if this enumerator is used as a flag.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn QString QDesignerMetaEnumInterface::key(int index) const
|
||||
|
||||
Returns the key with the given \a index.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn int QDesignerMetaEnumInterface::keyCount() const
|
||||
|
||||
Returns the number of keys.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn int QDesignerMetaEnumInterface::keyToValue(const QString &key) const
|
||||
|
||||
Returns the integer value of the given enumeration \a key, or -1 if \a key is not defined.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn int QDesignerMetaEnumInterface::keysToValue(const QString &keys) const
|
||||
|
||||
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.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn QString QDesignerMetaEnumInterface::name() const
|
||||
|
||||
Returns the name of the enumerator (without the scope).
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn QString QDesignerMetaEnumInterface::scope() const
|
||||
|
||||
Returns the scope this enumerator was declared in.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn QString QDesignerMetaEnumInterface::separator() const
|
||||
|
||||
Returns the separator to be used when building enumeration names.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn int QDesignerMetaEnumInterface::value(int index) const
|
||||
|
||||
Returns the value with the given \a index; or returns -1 if there is no such value.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn QString QDesignerMetaEnumInterface::valueToKey(int value) const
|
||||
|
||||
Returns the string that is used as the name of the given enumeration \a value, or QString::null if value is not defined.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn QString QDesignerMetaEnumInterface::valueToKeys(int value) const
|
||||
|
||||
Returns a byte array of '|'-separated keys that represents the given \a value.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\class QDesignerMetaPropertyInterface
|
||||
\internal
|
||||
\since 4.4
|
||||
|
||||
\brief QDesignerMetaPropertyInterface is part of \QD's introspection interface and represents a property.
|
||||
|
||||
\inmodule QtDesigner
|
||||
|
||||
The QDesignerMetaPropertyInterface class provides meta-data about a property.
|
||||
|
||||
\sa QDesignerMetaObjectInterface
|
||||
*/
|
||||
|
||||
/*!
|
||||
Constructs a QDesignerMetaPropertyInterface object.
|
||||
*/
|
||||
|
||||
QDesignerMetaPropertyInterface::QDesignerMetaPropertyInterface()
|
||||
{
|
||||
}
|
||||
|
||||
/*!
|
||||
Destroys the QDesignerMetaPropertyInterface object.
|
||||
*/
|
||||
|
||||
QDesignerMetaPropertyInterface::~QDesignerMetaPropertyInterface()
|
||||
{
|
||||
}
|
||||
|
||||
/*!
|
||||
\enum QDesignerMetaPropertyInterface::Kind
|
||||
|
||||
This enum indicates whether the property is of a special type.
|
||||
|
||||
\value EnumKind The property is of an enumeration type
|
||||
\value FlagKind The property is of an flag type
|
||||
\value OtherKind The property is of another type
|
||||
*/
|
||||
|
||||
/*!
|
||||
\enum QDesignerMetaPropertyInterface::AccessFlag
|
||||
|
||||
These flags specify the access the property provides.
|
||||
|
||||
\value ReadAccess Property can be read
|
||||
\value WriteAccess Property can be written
|
||||
\value ResetAccess Property can be reset to a default value
|
||||
*/
|
||||
|
||||
/*!
|
||||
\enum QDesignerMetaPropertyInterface::Attribute
|
||||
|
||||
Various attributes of the property.
|
||||
|
||||
\value DesignableAttribute Property is designable (visible in \QD)
|
||||
\value ScriptableAttribute Property is scriptable
|
||||
\value StoredAttribute Property is stored, that is, not calculated
|
||||
\value UserAttribute Property is the property that the user can edit for the QObject
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn const QDesignerMetaEnumInterface *QDesignerMetaPropertyInterface::enumerator() const
|
||||
|
||||
Returns the enumerator if this property's type is an enumerator type;
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn Kind QDesignerMetaPropertyInterface::kind() const
|
||||
|
||||
Returns the type of the property.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn AccessFlags QDesignerMetaPropertyInterface::accessFlags() const
|
||||
|
||||
Returns a combination of access flags.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn Attributes QDesignerMetaPropertyInterface::attributes(const QObject *object) const
|
||||
|
||||
Returns the attributes of the property for the gives \a object.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn QVariant::Type QDesignerMetaPropertyInterface::type() const
|
||||
|
||||
Returns the type of the property.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn QString QDesignerMetaPropertyInterface::name() const
|
||||
|
||||
Returns the name of the property.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn QString QDesignerMetaPropertyInterface::typeName() const
|
||||
|
||||
Returns the name of this property's type.
|
||||
*/
|
||||
|
||||
|
||||
/*!
|
||||
\fn int QDesignerMetaPropertyInterface::userType() const
|
||||
|
||||
Returns this property's user type.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn bool QDesignerMetaPropertyInterface::hasSetter() const
|
||||
|
||||
Returns whether getter and setter methods exist for this property.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn QVariant QDesignerMetaPropertyInterface::read(const QObject *object) const
|
||||
|
||||
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.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn bool QDesignerMetaPropertyInterface::reset(QObject *object) const
|
||||
|
||||
Resets the property for the given \a object with a reset method. Returns true if the reset worked; otherwise returns false.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn bool QDesignerMetaPropertyInterface::write(QObject *object, const QVariant &value) const
|
||||
|
||||
Writes \a value as the property's value to the given \a object. Returns true if the write succeeded; otherwise returns false.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\class QDesignerMetaMethodInterface
|
||||
\internal
|
||||
\since 4.4
|
||||
|
||||
\brief QDesignerMetaMethodInterface is part of \QD's introspection interface and represents a member function.
|
||||
|
||||
\inmodule QtDesigner
|
||||
|
||||
The QDesignerMetaMethodInterface class provides meta-data about a member function.
|
||||
|
||||
\sa QDesignerMetaObjectInterface
|
||||
*/
|
||||
|
||||
/*!
|
||||
Constructs a QDesignerMetaMethodInterface object.
|
||||
*/
|
||||
|
||||
QDesignerMetaMethodInterface::QDesignerMetaMethodInterface()
|
||||
{
|
||||
}
|
||||
|
||||
/*!
|
||||
Destroys the QDesignerMetaMethodInterface object.
|
||||
*/
|
||||
|
||||
QDesignerMetaMethodInterface::~QDesignerMetaMethodInterface()
|
||||
{
|
||||
}
|
||||
|
||||
/*!
|
||||
\enum QDesignerMetaMethodInterface::MethodType
|
||||
|
||||
This enum specifies the type of the method
|
||||
|
||||
\value Method The function is a plain member function.
|
||||
\value Signal The function is a signal.
|
||||
\value Slot The function is a slot.
|
||||
\value Constructor The function is a constructor.
|
||||
|
||||
*/
|
||||
|
||||
/*!
|
||||
\enum QDesignerMetaMethodInterface::Access
|
||||
|
||||
This enum represents the access specification of the method
|
||||
|
||||
\value Private A private member function
|
||||
\value Protected A protected member function
|
||||
\value Public A public member function
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn QDesignerMetaMethodInterface::Access QDesignerMetaMethodInterface::access() const
|
||||
|
||||
Returns the access specification of this method.
|
||||
*/
|
||||
|
||||
|
||||
/*!
|
||||
\fn QDesignerMetaMethodInterface::MethodType QDesignerMetaMethodInterface::methodType() const
|
||||
|
||||
Returns the type of this method.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn QStringList QDesignerMetaMethodInterface::parameterNames() const
|
||||
|
||||
Returns a list of parameter names.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn QStringList QDesignerMetaMethodInterface::parameterTypes() const
|
||||
|
||||
Returns a list of parameter types.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn QString QDesignerMetaMethodInterface::signature() const
|
||||
|
||||
Returns the signature of this method.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn QString QDesignerMetaMethodInterface::normalizedSignature() const
|
||||
|
||||
Returns the normalized signature of this method (suitable as signal/slot specification).
|
||||
*/
|
||||
|
||||
|
||||
/*!
|
||||
\fn QString QDesignerMetaMethodInterface::tag() const
|
||||
|
||||
Returns the tag associated with this method.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn QString QDesignerMetaMethodInterface::typeName() const
|
||||
|
||||
Returns the return type of this method, or an empty string if the return type is void.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\class QDesignerMetaObjectInterface
|
||||
\internal
|
||||
\since 4.4
|
||||
|
||||
\brief QDesignerMetaObjectInterface is part of \QD's introspection interface and provides meta-information about Qt objects
|
||||
|
||||
\inmodule QtDesigner
|
||||
|
||||
The QDesignerMetaObjectInterface class provides meta-data about Qt objects. For a given object, it can be obtained
|
||||
by querying QDesignerIntrospectionInterface.
|
||||
|
||||
\sa QDesignerIntrospectionInterface
|
||||
*/
|
||||
|
||||
/*!
|
||||
Constructs a QDesignerMetaObjectInterface object.
|
||||
*/
|
||||
|
||||
QDesignerMetaObjectInterface::QDesignerMetaObjectInterface()
|
||||
{
|
||||
}
|
||||
|
||||
/*!
|
||||
Destroys the QDesignerMetaObjectInterface object.
|
||||
*/
|
||||
|
||||
QDesignerMetaObjectInterface::~QDesignerMetaObjectInterface()
|
||||
{
|
||||
}
|
||||
|
||||
/*!
|
||||
\fn QString QDesignerMetaObjectInterface::className() const
|
||||
|
||||
Returns the class name.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn const QDesignerMetaEnumInterface *QDesignerMetaObjectInterface::enumerator(int index) const
|
||||
|
||||
Returns the meta-data for the enumerator with the given \a index.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn int QDesignerMetaObjectInterface::enumeratorCount() const
|
||||
|
||||
Returns the number of enumerators in this class.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn int QDesignerMetaObjectInterface::enumeratorOffset() const
|
||||
|
||||
Returns the enumerator offset for this class; i.e. the index position of this class's first enumerator.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn int QDesignerMetaObjectInterface::indexOfEnumerator(const QString &name) const
|
||||
|
||||
Finds enumerator \a name and returns its index; otherwise returns -1.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn int QDesignerMetaObjectInterface::indexOfMethod(const QString &method) const
|
||||
|
||||
Finds \a method and returns its index; otherwise returns -1.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn int QDesignerMetaObjectInterface::indexOfProperty(const QString &name) const
|
||||
|
||||
Finds property \a name and returns its index; otherwise returns -1.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn int QDesignerMetaObjectInterface::indexOfSignal(const QString &signal) const
|
||||
|
||||
Finds \a signal and returns its index; otherwise returns -1.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn int QDesignerMetaObjectInterface::indexOfSlot(const QString &slot) const
|
||||
|
||||
Finds \a slot and returns its index; otherwise returns -1.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn const QDesignerMetaMethodInterface *QDesignerMetaObjectInterface::method(int index) const
|
||||
|
||||
Returns the meta-data for the method with the given \a index.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn int QDesignerMetaObjectInterface::methodCount() const
|
||||
|
||||
Returns the number of methods in this class. These include ordinary methods, signals, and slots.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn int QDesignerMetaObjectInterface::methodOffset() const
|
||||
|
||||
Returns the method offset for this class; i.e. the index position of this class's first member function.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn const QDesignerMetaPropertyInterface *QDesignerMetaObjectInterface::property(int index) const
|
||||
|
||||
Returns the meta-data for the property with the given \a index.
|
||||
*/
|
||||
/*!
|
||||
\fn int QDesignerMetaObjectInterface::propertyCount() const
|
||||
|
||||
Returns the number of properties in this class.
|
||||
*/
|
||||
/*!
|
||||
\fn int QDesignerMetaObjectInterface::propertyOffset() const
|
||||
|
||||
Returns the property offset for this class; i.e. the index position of this class's first property.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn const QDesignerMetaObjectInterface *QDesignerMetaObjectInterface::superClass() const
|
||||
|
||||
Returns the meta-object of the superclass, or 0 if there is no such object.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\fn const QDesignerMetaPropertyInterface *QDesignerMetaObjectInterface::userProperty() const
|
||||
|
||||
Returns the property that has the USER flag set to true.
|
||||
*/
|
||||
|
||||
/*!
|
||||
\class QDesignerIntrospectionInterface
|
||||
\internal
|
||||
\since 4.4
|
||||
|
||||
\brief QDesignerIntrospectionInterface provides access to a QDesignerMetaObjectInterface for a given Qt object.
|
||||
|
||||
\inmodule QtDesigner
|
||||
|
||||
QDesignerIntrospectionInterface is the main class of \QD's introspection interface. These
|
||||
interfaces provide a layer of abstraction around QMetaObject and related classes to allow for the integration
|
||||
of other programming languages.
|
||||
|
||||
An instance of QDesignerIntrospectionInterface can be obtained from the core.
|
||||
|
||||
\sa QDesignerMetaObjectInterface
|
||||
*/
|
||||
|
||||
/*!
|
||||
Constructs a QDesignerIntrospectionInterface object.
|
||||
*/
|
||||
|
||||
QDesignerIntrospectionInterface::QDesignerIntrospectionInterface()
|
||||
{
|
||||
}
|
||||
|
||||
/*!
|
||||
Destroys the QDesignerIntrospectionInterface object.
|
||||
*/
|
||||
|
||||
QDesignerIntrospectionInterface::~QDesignerIntrospectionInterface()
|
||||
{
|
||||
}
|
||||
|
||||
/*!
|
||||
\fn const QDesignerMetaObjectInterface* QDesignerIntrospectionInterface::metaObject(const QObject *object) const
|
||||
|
||||
Returns the meta object of this \a object.
|
||||
*/
|
||||
|
||||
QT_END_NAMESPACE
|
||||
Reference in New Issue
Block a user