2020-07-27 10:39:28 +02:00
|
|
|
#include "inspectorformwidget.h"
|
|
|
|
|
2020-08-27 11:23:17 +02:00
|
|
|
#include "mu4/inspector/models/inspectorlistmodel.h"
|
2020-07-27 10:39:28 +02:00
|
|
|
#include "inspectordockwidget.h"
|
|
|
|
|
2020-07-28 09:44:56 +02:00
|
|
|
InspectorFormWidget::InspectorFormWidget(QQmlEngine* qmlEngine, QWidget* parent)
|
|
|
|
: QQuickWidget(qmlEngine, parent)
|
2020-07-27 10:39:28 +02:00
|
|
|
{
|
|
|
|
setMinimumWidth(360);
|
|
|
|
setMinimumHeight(parent->height());
|
|
|
|
|
|
|
|
if (parent) {
|
|
|
|
m_inspector = qobject_cast<InspectorDockWidget*>(parent);
|
|
|
|
}
|
|
|
|
|
|
|
|
QUrl url = QUrl(QStringLiteral("qrc:/qml/MuseScore/Inspector/InspectorForm.qml"));
|
|
|
|
|
|
|
|
setSource(url);
|
|
|
|
|
|
|
|
setResizeMode(QQuickWidget::SizeRootObjectToView);
|
|
|
|
|
|
|
|
m_inspectorListModel = new InspectorListModel(this);
|
|
|
|
connect(m_inspectorListModel, &InspectorListModel::elementsModified, this, &InspectorFormWidget::layoutUpdateRequested);
|
|
|
|
|
|
|
|
setFocusPolicy(Qt::StrongFocus);
|
|
|
|
|
|
|
|
if (rootObject()) {
|
|
|
|
rootObject()->setProperty("model", QVariant::fromValue(m_inspectorListModel));
|
|
|
|
rootObject()->setWidth(minimumWidth());
|
|
|
|
rootObject()->setHeight(minimumHeight());
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
void InspectorFormWidget::onSelectionChanged(const QList<Ms::Element*>& elementList)
|
|
|
|
{
|
|
|
|
m_inspectorListModel->setElementList(elementList);
|
|
|
|
}
|
|
|
|
|
2020-07-28 09:44:56 +02:00
|
|
|
void InspectorFormWidget::focusInEvent(QFocusEvent* event)
|
2020-07-27 10:39:28 +02:00
|
|
|
{
|
|
|
|
QQuickWidget::focusInEvent(event);
|
|
|
|
|
|
|
|
if (rootObject()) {
|
|
|
|
rootObject()->setFocus(true);
|
|
|
|
}
|
|
|
|
}
|