5#ifndef QQMLVMEMETAOBJECT_P_H
6#define QQMLVMEMETAOBJECT_P_H
19#include <private/qbipointer_p.h>
20#include <private/qqmlguard_p.h>
21#include <private/qqmlguardedcontextdata_p.h>
22#include <private/qqmlpropertyvalueinterceptor_p.h>
23#include <private/qv4object_p.h>
24#include <private/qv4value_p.h>
26#include <QtCore/private/qobject_p.h>
28#if QT_CONFIG(regularexpression)
29#include <QtCore/qregularexpression.h>
32#include <QtCore/qbitarray.h>
33#include <QtCore/qdatetime.h>
34#include <QtCore/qdebug.h>
35#include <QtCore/qlist.h>
36#include <QtCore/qmetaobject.h>
37#include <QtCore/qpair.h>
51 QV4::Heap::Object *
list()
const {
return m_list; }
62 QV4::Scope scope(m_list->internalClass->engine);
64 m_list->arrayData->vtable()->truncate(
object, 0);
69 const uint length = m_list->arrayData->length();
73 QV4::Scope scope(m_list->internalClass->engine);
75 m_list->arrayData->vtable()->truncate(
object,
length - 1);
82 QV4::Heap::Object *m_list =
nullptr;
118 for (
auto it = interceptors;
it;
it =
it->m_next) {
119 if (
it->m_propertyIndex == propertyIndex)
122 if (
auto parentInterceptor = ((parent.isT1() && parent.flag()) ?
static_cast<QQmlInterceptorMetaObject *
>(parent.asT1()) :
nullptr))
123 return parentInterceptor->intercepts(propertyIndex);
150 return doIntercept(
c,
id,
a);
153 QBiPointer<QDynamicMetaObjectData, const QMetaObject>
parent;
156 QTaggedPointer<const QMetaObject, MetaObjectValidity>
metaObject;
167 if (
data->hasInterceptorMetaObject)
181 const QQmlRefPointer<QV4::ExecutableCompilationUnit> &qmlCompilationUnit,
185 bool aliasTarget(
int index,
QObject **
target,
int *coreIndex,
int *valueTypeIndex)
const;
191 void connectAliasSignal(
int index,
bool indexInSignalRange);
198 static void list_append(QQmlListProperty<QObject> *prop,
QObject *
o);
199 static void list_clear(QQmlListProperty<QObject> *prop);
200 static void list_append_nosignal(QQmlListProperty<QObject> *prop,
QObject *
o);
201 static void list_clear_nosignal(QQmlListProperty<QObject> *prop);
210 inline int propOffset()
const;
211 inline int methodOffset()
const;
212 inline int signalOffset()
const;
213 inline int signalCount()
const;
220 int readPropertyAsInt(
int id)
const;
221 bool readPropertyAsBool(
int id)
const;
222 double readPropertyAsDouble(
int id)
const;
223 QString readPropertyAsString(
int id)
const;
224 QSizeF readPropertyAsSizeF(
int id)
const;
225 QPointF readPropertyAsPointF(
int id)
const;
226 QUrl readPropertyAsUrl(
int id)
const;
227 QDate readPropertyAsDate(
int id)
const;
228 QTime readPropertyAsTime(
int id)
const;
229 QDateTime readPropertyAsDateTime(
int id)
const;
231#if QT_CONFIG(regularexpression)
235 QRectF readPropertyAsRectF(
int id)
const;
236 QObject *readPropertyAsQObject(
int id)
const;
237 void initPropertyAsList(
int id)
const;
244 template<
typename VariantCompatible>
252 QMetaType::fromType<VariantCompatible>(), &
v));
258 void ensureQObjectWrapper();
262 void connectAlias(
int aliasId);
267 void writeVarProperty(
int,
const QV4::Value &);
268 QVariant readPropertyAsVariant(
int)
const;
273 void activate(
QObject *,
int,
void **);
290 if (
data->hasVMEMetaObject)
300 return cache->propertyOffset();
305 return cache->methodOffset();
310 return cache->signalOffset();
315 return cache->signalCount();
\inmodule QtCore\reentrant
\inmodule QtCore \reentrant
static QObjectPrivate * get(QObject *o)
\inmodule QtCore\reentrant
static QQmlData * get(QObjectPrivate *priv, bool create)
The QQmlPropertyValueInterceptor class is inherited by property interceptors such as Behavior.
QQmlVMEMetaObject * metaObject() const
void replace(qsizetype i, QObject *o) const
QV4::Heap::Object * list() const
void append(QObject *o) const
QQmlVMEResolvedList(QQmlListProperty< QObject > *prop)
void activateSignal() const
QQmlVMEMetaObject * m_target
void setGuardedValue(QObject *obj, QQmlVMEMetaObject *target, int index)
QQmlVMEVariantQObjectPtr()
\inmodule QtCore\reentrant
\inmodule QtCore \reentrant
\macro QT_RESTRICTED_CAST_FROM_ASCII
\inmodule QtCore \reentrant
QCache< int, Employee > cache
[0]
QSet< QString >::iterator it
Combined button and popup list for selecting options.
DBusConnection const char DBusError DBusBusType DBusError return DBusConnection DBusHandleMessageFunction void DBusFreeFunction return DBusConnection return DBusConnection return const char DBusError return DBusConnection DBusMessage dbus_uint32_t return DBusConnection dbus_bool_t DBusConnection DBusAddWatchFunction DBusRemoveWatchFunction DBusWatchToggledFunction void DBusFreeFunction return DBusConnection DBusDispatchStatusFunction void DBusFreeFunction DBusTimeout return DBusTimeout return DBusWatch return DBusWatch unsigned int return DBusError const DBusError return const DBusMessage return DBusMessage return DBusMessage return DBusMessage return DBusMessage return DBusMessage return DBusMessageIter int const void return DBusMessageIter DBusMessageIter return DBusMessageIter void DBusMessageIter void int return DBusMessage DBusMessageIter return DBusMessageIter return DBusMessageIter DBusMessageIter const char const char const char const char * method
static QDBusError::ErrorType get(const char *name)
static int writeProperty(QObject *obj, const QByteArray &property_name, QVariant value, int propFlags=QDBusConnection::ExportAllProperties)
GLsizei const GLfloat * v
[13]
GLboolean GLboolean GLboolean GLboolean a
[7]
GLenum GLuint GLenum GLsizei length
GLint GLsizei GLsizei GLenum GLenum GLsizei void * data
obj metaObject() -> className()