QmlDesigner: Implement effect maker nodes popup and load data in it

Change-Id: I95625f2eaf8aac71679b2f816dd20a9167849830
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io>
This commit is contained in:
Mahmoud Badri
2023-08-11 12:53:28 +03:00
parent 63dd551b06
commit 6e2c62776b
14 changed files with 296 additions and 66 deletions

View File

@@ -4,6 +4,7 @@
#include "effectmakerwidget.h"
#include "effectmakermodel.h"
#include "effectmakernodesmodel.h"
#include "effectmakerview.h"
#include "qmldesignerconstants.h"
#include "qmldesignerplugin.h"
@@ -33,6 +34,7 @@ static QString propertyEditorResourcesPath()
EffectMakerWidget::EffectMakerWidget(EffectMakerView *view)
: m_effectMakerModel{new EffectMakerModel(this)}
, m_effectMakerNodesModel{new EffectMakerNodesModel(this)}
, m_effectMakerView(view)
, m_quickWidget{new StudioQuickWidget(this)}
{
@@ -59,7 +61,8 @@ EffectMakerWidget::EffectMakerWidget(EffectMakerView *view)
QmlDesignerPlugin::trackWidgetFocusTime(this, Constants::EVENT_EFFECTMAKER_TIME);
auto map = m_quickWidget->registerPropertyMap("EffectMakerBackend");
map->setProperties({{"effectMakerModel", QVariant::fromValue(m_effectMakerModel.data())},
map->setProperties({{"effectMakerNodesModel", QVariant::fromValue(m_effectMakerNodesModel.data())},
{"effectMakerModel", QVariant::fromValue(m_effectMakerModel.data())},
{"rootView", QVariant::fromValue(this)}});
// init the first load of the QML UI elements
@@ -91,6 +94,11 @@ QPointer<EffectMakerModel> EffectMakerWidget::effectMakerModel() const
return m_effectMakerModel;
}
QPointer<EffectMakerNodesModel> EffectMakerWidget::effectMakerNodesModel() const
{
return m_effectMakerNodesModel;
}
void EffectMakerWidget::focusSection(int section)
{
Q_UNUSED(section)