Skip to content

Commit f3c6092

Browse files
committed
Load list monitors
1 parent 98e99ed commit f3c6092

File tree

2 files changed

+10
-8
lines changed

2 files changed

+10
-8
lines changed

src/projectloader.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
#include "projectloader.h"
1010
#include "spritemodel.h"
1111
#include "valuemonitormodel.h"
12+
#include "listmonitormodel.h"
1213
#include "renderedtarget.h"
1314

1415
using namespace scratchcpprender;
@@ -315,7 +316,7 @@ void ProjectLoader::addMonitor(Monitor *monitor)
315316

316317
switch (monitor->mode()) {
317318
case Monitor::Mode::List:
318-
// TODO: Add support for list monitors
319+
model = new ListMonitorModel(section.get());
319320
break;
320321

321322
default:

test/projectloader/projectloader_test.cpp

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
#include <projectloader.h>
33
#include <spritemodel.h>
44
#include <valuemonitormodel.h>
5+
#include <listmonitormodel.h>
56
#include <enginemock.h>
67
#include <renderedtargetmock.h>
78

@@ -81,15 +82,15 @@ TEST_F(ProjectLoaderTest, Load)
8182
ASSERT_EQ(sprites[1]->sprite(), engine->targetAt(2));
8283

8384
const auto &monitors = loader.monitorList();
84-
ASSERT_EQ(monitors.size(), 7);
85+
ASSERT_EQ(monitors.size(), 10);
8586

86-
ValueMonitorModel *monitorModel = dynamic_cast<ValueMonitorModel *>(monitors[0]);
87-
ASSERT_EQ(monitorModel->monitor(), engine->monitors().at(3).get());
88-
ASSERT_EQ(monitorModel->color(), QColor::fromString("#FF8C1A"));
87+
ListMonitorModel *listMonitorModel = dynamic_cast<ListMonitorModel *>(monitors[0]);
88+
ASSERT_EQ(listMonitorModel->monitor(), engine->monitors().at(0).get());
89+
ASSERT_EQ(listMonitorModel->color(), QColor::fromString("#FF661A"));
8990

90-
monitorModel = dynamic_cast<ValueMonitorModel *>(monitors[1]);
91-
ASSERT_EQ(monitorModel->monitor(), engine->monitors().at(4).get());
92-
ASSERT_EQ(monitorModel->color(), QColor::fromString("#FF8C1A"));
91+
ValueMonitorModel *valueMonitorModel = dynamic_cast<ValueMonitorModel *>(monitors[3]);
92+
ASSERT_EQ(valueMonitorModel->monitor(), engine->monitors().at(3).get());
93+
ASSERT_EQ(valueMonitorModel->color(), QColor::fromString("#FF8C1A"));
9394
}
9495

9596
TEST_F(ProjectLoaderTest, Clones)

0 commit comments

Comments
 (0)