-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathwindowSelectorItem.cpp
More file actions
34 lines (31 loc) · 1.53 KB
/
Copy pathwindowSelectorItem.cpp
File metadata and controls
34 lines (31 loc) · 1.53 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#include "windowSelectorItem.h"
#include "windowIconProvider.h"
windowSelectorItem::windowSelectorItem() : windowmodel(new windowModel) {}
int windowSelectorItem::create(QString path, panel *p) {
const QUrl url(path);
windowSelectorItem::root = p->applicationEngine.rootObjects().first();
windowSelectorItem::sampleItem = root->findChild<QQuickItem *>("sampleItem");
windowSelectorItem::component =
new QQmlComponent(&p->applicationEngine, QUrl(path));
windowSelectorItem::windowSelectorItemInstance =
qobject_cast<QQuickItem *>(component->createWithInitialProperties(
{{"windowModel", QVariant::fromValue(windowmodel)}}));
if (component->status() != component->Ready) {
if (component->status() == component->Error) {
qDebug() << "Error:" + component->errorString();
}
}
p->applicationEngine.setObjectOwnership(windowSelectorItemInstance,
QQmlEngine::JavaScriptOwnership);
p->applicationEngine.addImageProvider("windowicon", new windowIconProvider);
repeater = dynamic_cast<QObject *>(
windowSelectorItem::windowSelectorItemInstance->findChild<QObject *>(
"repeater"));
QObject::connect(windowSelectorItemInstance,
SIGNAL(windowActivateRequested(int, int)), windowmodel,
SLOT(onWindowActivateRequested(int, int)));
QObject::connect(windowSelectorItemInstance,
SIGNAL(windowMinimizeRequested(int, int)), windowmodel,
SLOT(onWindowMinimizeRequested(int, int)));
return 0;
}