6#include <private/qqmldata_p.h>
7#include <private/qqmlengine_p.h>
10#include <QtCore/qcoreevent.h>
11#include <QtCore/qcoreapplication.h>
12#include <QtCore/qdebug.h>
17QQmlListModelWorkerAgent::Sync::~Sync()
35 return m_copy->m_engine;
40 if (eng != m_copy->m_engine) {
41 m_copy->m_engine = eng;
53 bool del = !m_ref.
deref();
66 return m_copy->
count();
111 Sync *
s =
new Sync(m_copy);
115 syncDone.
wait(&mutex);
125 Sync *
s =
static_cast<Sync *
>(
e);
127 cc = (m_orig->
count() !=
s->list->count());
129 Q_ASSERT(m_orig->m_dynamicRoles ==
s->list->m_dynamicRoles);
130 if (m_orig->m_dynamicRoles)
149#include "moc_qqmllistmodelworkeragent_p.cpp"
static bool sync(ListModel *src, ListModel *target)
static void postEvent(QObject *receiver, QEvent *event, int priority=Qt::NormalEventPriority)
The QJSValue class acts as a container for Qt/JavaScript data types.
void unlock() noexcept
Unlocks this mutex locker.
void unlock() noexcept
Unlocks the mutex.
void lock() noexcept
Locks the mutex.
virtual bool event(QEvent *event)
This virtual function receives events to an object and should return true if the event e was recogniz...
void deleteLater()
\threadsafe
Q_INVOKABLE void append(QQmlV4Function *args)
bool event(QEvent *) override
This virtual function receives events to an object and should return true if the event e was recogniz...
void engineChanged(QV4::ExecutionEngine *engine)
Q_INVOKABLE void move(int from, int to, int count)
QV4::ExecutionEngine * engine
Q_INVOKABLE void release()
Q_INVOKABLE void set(int index, const QJSValue &value)
QQmlListModelWorkerAgent(QQmlListModel *)
Q_INVOKABLE void remove(QQmlV4Function *args)
Q_INVOKABLE void setProperty(int index, const QString &property, const QVariant &value)
Q_INVOKABLE void addref()
~QQmlListModelWorkerAgent()
void setEngine(QV4::ExecutionEngine *eng)
Q_INVOKABLE void insert(QQmlV4Function *args)
Q_INVOKABLE QJSValue get(int index) const
Q_INVOKABLE void insert(QQmlV4Function *args)
\qmlmethod ListModel::insert(int index, jsobject dict)
Q_INVOKABLE void sync()
\qmlmethod ListModel::sync()
Q_INVOKABLE void clear()
\qmlmethod ListModel::clear()
Q_INVOKABLE void append(QQmlV4Function *args)
\qmlmethod ListModel::append(jsobject dict)
Q_INVOKABLE void setProperty(int index, const QString &property, const QVariant &value)
\qmlmethod ListModel::setProperty(int index, string property, variant value)
Q_INVOKABLE QJSValue get(int index) const
\qmlmethod object ListModel::get(int index)
Q_INVOKABLE void move(int from, int to, int count)
\qmlmethod ListModel::move(int from, int to, int n)
Q_INVOKABLE void remove(QQmlV4Function *args)
\qmlmethod ListModel::remove(int index, int count = 1)
Q_INVOKABLE void set(int index, const QJSValue &value)
\qmlmethod ListModel::set(int index, jsobject dict)
\macro QT_RESTRICTED_CAST_FROM_ASCII
bool wait(QMutex *, QDeadlineTimer=QDeadlineTimer(QDeadlineTimer::Forever))
Combined button and popup list for selecting options.
EGLOutputLayerEXT EGLint EGLAttrib value
[5]
GLenum GLenum GLsizei count
QSqlQueryModel * model
[16]