QmlDesigner: Use correct font in Text-edit based in-place editor

Task-number: QDS-2306
Change-Id: I47d886f013692be717b4dffd29d66c711b0760cf
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
This commit is contained in:
Tuomo Pelkonen
2021-03-16 12:08:58 +02:00
parent f820164b1a
commit 85533cce0f

View File

@@ -70,15 +70,17 @@ void TextEditItem::setFormEditorItem(FormEditorItem *formEditorItem)
setGeometry(rect); setGeometry(rect);
NodeMetaInfo metaInfo = m_formEditorItem->qmlItemNode().modelNode().metaInfo(); NodeMetaInfo metaInfo = m_formEditorItem->qmlItemNode().modelNode().metaInfo();
auto node = m_formEditorItem->qmlItemNode();
auto font = node.instanceValue("font").value<QFont>();
if (metaInfo.isValid() && if (metaInfo.isValid() &&
(metaInfo.isSubclassOf("QtQuick.TextEdit") (metaInfo.isSubclassOf("QtQuick.TextEdit")
|| metaInfo.isSubclassOf("QtQuick.Controls.TextArea"))) { || metaInfo.isSubclassOf("QtQuick.Controls.TextArea"))) {
QSize maximumSize = rect.size().toSize(); QSize maximumSize = rect.size().toSize();
textEdit()->setFont(font);
activateTextEdit(maximumSize); activateTextEdit(maximumSize);
} else { } else {
auto lineEdit = TextEditItemWidget::lineEdit(); auto lineEdit = TextEditItemWidget::lineEdit();
auto node = m_formEditorItem->qmlItemNode(); lineEdit->setFont(font);
lineEdit->setFont(node.instanceValue("font").value<QFont>());
activateLineEdit(); activateLineEdit();
} }