26 connect(
this, &QQmlPreviewServiceImpl::load, &m_handler, &QQmlPreviewHandler::load);
27 connect(
this, &QQmlPreviewServiceImpl::drop, &m_handler, &QQmlPreviewHandler::dropCU);
29 connect(
this, &QQmlPreviewServiceImpl::zoom, &m_handler, &QQmlPreviewHandler::zoom);
30 connect(
this, &QQmlPreviewServiceImpl::animationSpeed,
31 &m_handler, &QQmlPreviewHandler::setAnimationSpeed);
32 connect(
this, &QQmlPreviewServiceImpl::settingsChanged,
33 &m_handler, &QQmlPreviewHandler::configure);
34 connect(&m_handler, &QQmlPreviewHandler::error,
this, &QQmlPreviewServiceImpl::forwardError,
35 Qt::DirectConnection);
37 Qt::DirectConnection);
38 connect(&m_handler, &QQmlPreviewHandler::confirmation,
39 this, &QQmlPreviewServiceImpl::forwardConfirmation, Qt::DirectConnection);
40 connect(&m_handler, &QQmlPreviewHandler::hotReloadFailure,
this,
41 &QQmlPreviewServiceImpl::forwardHotReloadFailure, Qt::DirectConnection);
50 QQmlDebugPacket packet(data);
58 packet >> path >> contents;
60 const QUrl url = path.startsWith(QLatin1Char(
':'))
61 ? QUrl(QLatin1String(
"qrc") + path)
62 : QUrl::fromLocalFile(path);
65 emit file(path, contents);
70 if (m_currentUrl.isEmpty() && path.endsWith(
".qml")) {
72 emit load(m_currentUrl);
79 packet >> path >> entries;
80 emit directory(path, entries);
108 emit zoom(
static_cast<qreal>(factor));
111 case AnimationSpeed: {
114 emit animationSpeed(qreal(factor));
117 case Configuration: {
118 bool enableInPlaceUpdates;
119 packet >> enableInPlaceUpdates;
120 QQmlPreviewHandler::Settings options;
121 options.enableInPlaceUpdates = enableInPlaceUpdates;
122 emit settingsChanged(options);
126 forwardError(QString::fromLatin1(
"Invalid command: %1").arg(command));
147 if (state == Enabled) {
148 m_loader.reset(
new QQmlPreviewFileLoader(
this));
149 connect(
this, &QQmlPreviewServiceImpl::load,
150 m_loader.data(), &QQmlPreviewFileLoader::whitelist, Qt::DirectConnection);
151 QV4::ExecutionEngine::setPreviewing(
true);
152 m_fileEngine.reset(
new QQmlPreviewFileEngineHandler(m_loader.data()));
154 QV4::ExecutionEngine::setPreviewing(
false);
155 m_fileEngine.reset();