diff options
author | Ulf Hermann <ulf.hermann@theqtcompany.com> | 2015-07-13 16:20:12 +0200 |
---|---|---|
committer | Ulf Hermann <ulf.hermann@theqtcompany.com> | 2015-07-29 14:36:00 +0000 |
commit | 6d019b08cdd7f995b62956d29594b498fe3f61e4 (patch) | |
tree | 93fc2cd3acaaf0dc438013ab89b23f292ba8afca | |
parent | c866ba8e3a4489881bf328da16673b8acc1eeca8 (diff) |
Make QQmlDebugService's state and engine callbacks public
It's clear that the public API of QQmlDebugService is meant to be used
by QQmlDebugServer or future replacements. Restricting access with
"friend" requires listing all those possible replacements.
Change-Id: I197f1fa53cf985f52cfe5e077a95eda1ed5214b4
Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
-rw-r--r-- | src/qml/debugger/qqmldebugserver.cpp | 6 | ||||
-rw-r--r-- | src/qml/debugger/qqmldebugservice.cpp | 6 | ||||
-rw-r--r-- | src/qml/debugger/qqmldebugservice_p.h | 23 |
3 files changed, 19 insertions, 16 deletions
diff --git a/src/qml/debugger/qqmldebugserver.cpp b/src/qml/debugger/qqmldebugserver.cpp index 607b03916e..7d0ed00757 100644 --- a/src/qml/debugger/qqmldebugserver.cpp +++ b/src/qml/debugger/qqmldebugserver.cpp @@ -608,9 +608,9 @@ void QQmlDebugServerPrivate::_q_changeServiceState(const QString &serviceName, service = plugins.value(serviceName); } - if (service && (service->d_func()->state != newState)) { + if (service && service->state() != newState) { service->stateAboutToBeChanged(newState); - service->d_func()->state = newState; + service->setState(newState); service->stateChanged(newState); } @@ -707,7 +707,7 @@ bool QQmlDebugServer::addService(QQmlDebugService *service) QQmlDebugService::State newState = QQmlDebugService::Unavailable; if (d->clientPlugins.contains(service->name())) newState = QQmlDebugService::Enabled; - service->d_func()->state = newState; + service->setState(newState); return true; } diff --git a/src/qml/debugger/qqmldebugservice.cpp b/src/qml/debugger/qqmldebugservice.cpp index c70ea10175..59ff1db699 100644 --- a/src/qml/debugger/qqmldebugservice.cpp +++ b/src/qml/debugger/qqmldebugservice.cpp @@ -103,6 +103,12 @@ QQmlDebugService::State QQmlDebugService::state() const return d->state; } +void QQmlDebugService::setState(QQmlDebugService::State newState) +{ + Q_D(QQmlDebugService); + d->state = newState; +} + namespace { class ObjectReferenceHash : public QObject { diff --git a/src/qml/debugger/qqmldebugservice_p.h b/src/qml/debugger/qqmldebugservice_p.h index f25bb48e05..e75ba547ce 100644 --- a/src/qml/debugger/qqmldebugservice_p.h +++ b/src/qml/debugger/qqmldebugservice_p.h @@ -70,6 +70,16 @@ public: enum State { NotConnected, Unavailable, Enabled }; State state() const; + void setState(State newState); + + virtual void stateAboutToBeChanged(State); + virtual void stateChanged(State); + virtual void messageReceived(const QByteArray &); + + virtual void engineAboutToBeAdded(QQmlEngine *); + virtual void engineAboutToBeRemoved(QQmlEngine *); + virtual void engineAdded(QQmlEngine *); + virtual void engineRemoved(QQmlEngine *); void sendMessage(const QByteArray &); void sendMessages(const QList<QByteArray> &); @@ -86,22 +96,9 @@ protected: State registerService(); - virtual void stateAboutToBeChanged(State); - virtual void stateChanged(State); - virtual void messageReceived(const QByteArray &); - - virtual void engineAboutToBeAdded(QQmlEngine *); - virtual void engineAboutToBeRemoved(QQmlEngine *); - virtual void engineAdded(QQmlEngine *); - virtual void engineRemoved(QQmlEngine *); - signals: void attachedToEngine(QQmlEngine *); void detachedFromEngine(QQmlEngine *); - -private: - friend class QQmlDebugServer; - friend class QQmlDebugServerPrivate; }; class Q_QML_PRIVATE_EXPORT QQmlDebugStream : public QDataStream |