diff options
Diffstat (limited to 'src/server/mainwindow/mainwindow.cpp')
-rw-r--r-- | src/server/mainwindow/mainwindow.cpp | 23 |
1 files changed, 14 insertions, 9 deletions
diff --git a/src/server/mainwindow/mainwindow.cpp b/src/server/mainwindow/mainwindow.cpp index c7d8a9e..b76534e 100644 --- a/src/server/mainwindow/mainwindow.cpp +++ b/src/server/mainwindow/mainwindow.cpp @@ -398,10 +398,9 @@ void MainWindow::tryToUseRoomTemplate() conf.endArray(); /* read backgroundImage */ - QString image = conf.contains("backgroundImage") ? conf.value("backgroundImage").toString() : ""; - - // Find the managerIP of current room. - QString mgrIP = conf.value("mgrIP").toString(); + QString image = conf.contains("backgroundImage") ? conf.value("backgroundImage").toString() : ""; + QString mgrIP = conf.value("mgrIP").toString(); + QString tutorIP = conf.value("tutorIP").toString(); QSize gridSize; QSize clientSize(1,1); @@ -427,7 +426,7 @@ void MainWindow::tryToUseRoomTemplate() qDebug() << "had to use minimalGridSize(): = " << gridSize; } - Room* r = new Room(clientPositions, gridSize, clientSize, image); + Room* r = new Room(clientPositions, gridSize, clientSize, image, tutorIP); qDebug() << "read new room: " << roomName << ": " << gridSize << ", " << clientSize; roomsList.insert(roomName, r); } @@ -829,17 +828,23 @@ void MainWindow::switchRoomTo(QString roomToReload) { /* place connection frames */ - for (QMap<QString, QPoint>::iterator it = room->clientPositions.begin(); it != room->clientPositions.end(); ++it) - { + for (auto it = room->clientPositions.begin(); it != room->clientPositions.end(); ++it) { QString computerId = it.key(); QPoint pos = it.value(); - - /* Transform to pixels for createFrame(computerId, position).*/ QPoint pxPos(pos.x() * getTileWidthPx(), pos.y() * getTileHeightPx()); ConnectionFrame *cf = createFrame(computerId, pxPos, pos); cf->move(cf->getCurrentPosition()); onPlaceFrame(false, cf); + if (computerId == room->tutorIP) { + qDebug() << "set computer with id " << computerId << " as tutor per configuration"; + if (getTutorFrame() != NULL) { + getTutorFrame()->setTutor(false); + } + cf->setTutor(true); + } else { + //qDebug() << "not tutor because id is " << computerId << " and tutorIP is " << room->tutorIP; + } } /* load background image */ |