porymap/src/ui/graphicsview.cpp

52 lines
1.5 KiB
C++
Raw Normal View History

2018-09-27 00:30:05 +01:00
#include "graphicsview.h"
#include "editor.h"
void GraphicsView::mousePressEvent(QMouseEvent *event) {
QGraphicsView::mousePressEvent(event);
if (editor) {
editor->objectsView_onMousePress(event);
}
}
void GraphicsView::mouseMoveEvent(QMouseEvent *event) {
QGraphicsView::mouseMoveEvent(event);
}
void GraphicsView::mouseReleaseEvent(QMouseEvent *event) {
QGraphicsView::mouseReleaseEvent(event);
}
2020-08-27 01:42:42 +01:00
void GraphicsView::drawForeground(QPainter *painter, const QRectF&) {
2021-11-30 17:58:39 +00:00
foreach (Overlay * overlay, this->overlayMap)
overlay->renderItems(painter);
}
void GraphicsView::clearOverlays() {
2021-12-08 14:20:17 +00:00
foreach (Overlay * overlay, this->overlayMap) {
2021-11-30 17:58:39 +00:00
overlay->clearItems();
2021-12-08 14:20:17 +00:00
delete overlay;
}
this->overlayMap.clear();
2021-11-30 17:58:39 +00:00
}
2021-11-30 18:38:06 +00:00
void GraphicsView::setOverlaysHidden(bool hidden) {
foreach (Overlay * overlay, this->overlayMap)
overlay->setHidden(hidden);
}
2021-11-30 17:58:39 +00:00
Overlay * GraphicsView::getOverlay(int layer) {
Overlay * overlay = this->overlayMap.value(layer, nullptr);
if (!overlay) {
overlay = new Overlay();
this->overlayMap.insert(layer, overlay);
}
2021-11-30 17:58:39 +00:00
return overlay;
}
void GraphicsView::moveEvent(QMoveEvent *event) {
QGraphicsView::moveEvent(event);
QLabel *label_MapRulerStatus = findChild<QLabel *>("label_MapRulerStatus", Qt::FindDirectChildrenOnly);
if (label_MapRulerStatus && label_MapRulerStatus->isVisible())
label_MapRulerStatus->move(mapToGlobal(QPoint(6, 6)));
}