diff options
author | Mahmoud Badri <mahmoud.badri@qt.io> | 2021-10-25 21:36:33 +0300 |
---|---|---|
committer | Mahmoud Badri <mahmoud.badri@qt.io> | 2021-10-26 10:18:11 +0000 |
commit | 01164e737dbb1b45becda997280f318bbd5e6160 (patch) | |
tree | 60dc8725e5e830f7a6ce1a6e9fdacab2355c4031 | |
parent | 74454a3531aa772d083b2d61e2d1e6e1184146d6 (diff) |
QmlDesigner: Add a Text component when dropping a font to Form Editor
When dragging a font from the file system and dropping it on the Form
Editor, create a Text component.
Fixes: QDS-5272
Change-Id: I3ec9420f870732afac7d09688f1e459881d4aad3
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
-rw-r--r-- | src/plugins/qmldesigner/components/formeditor/formeditorwidget.cpp | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/plugins/qmldesigner/components/formeditor/formeditorwidget.cpp b/src/plugins/qmldesigner/components/formeditor/formeditorwidget.cpp index 6b81d1f92e..e7e3d69d6a 100644 --- a/src/plugins/qmldesigner/components/formeditor/formeditorwidget.cpp +++ b/src/plugins/qmldesigner/components/formeditor/formeditorwidget.cpp @@ -599,12 +599,20 @@ void FormEditorWidget::dropEvent(QDropEvent *dropEvent) ->viewManager().designerActionManager(); QHash<QString, QStringList> addedAssets = actionManager.handleExternalAssetsDrop(dropEvent->mimeData()); - // add image assets to Form Editor + // Create Image components for added image assets const QStringList addedImages = addedAssets.value(ComponentCoreConstants::addImagesDisplayString); for (const QString &imgPath : addedImages) { QmlItemNode::createQmlItemNodeFromImage(m_formEditorView, imgPath, {}, m_formEditorView->scene()->rootFormEditorItem()->qmlItemNode()); } + + // Create Text components for added font assets + const QStringList addedFonts = addedAssets.value(ComponentCoreConstants::addFontsDisplayString); + for (const QString &fontPath : addedFonts) { + QString fontFamily = QFileInfo(fontPath).baseName(); + QmlItemNode::createQmlItemNodeFromFont(m_formEditorView, fontFamily, rootItemRect().center(), + m_formEditorView->scene()->rootFormEditorItem()->qmlItemNode()); + } } } // namespace QmlDesigner |