Reduce redundant work in metatile selector

This commit is contained in:
GriffinR
2024-01-04 21:36:14 -05:00
parent 8c85209d53
commit 941174d0ea
2 changed files with 31 additions and 14 deletions

View File

@@ -39,6 +39,7 @@ public:
this->primaryTileset = map->layout->tileset_primary;
this->secondaryTileset = map->layout->tileset_secondary;
this->selection = MetatileSelection{};
this->cellPos = QPoint(-1, -1);
setAcceptHoverEvents(true);
}
QPoint getSelectionDimensions();
@@ -68,13 +69,15 @@ private:
int externalSelectionHeight;
QList<uint16_t> externalSelectedMetatiles;
MetatileSelection selection;
QPoint cellPos;
void updateSelectedMetatiles();
void updateExternalSelectedMetatiles();
uint16_t getMetatileId(int x, int y);
uint16_t getMetatileId(int x, int y) const;
QPoint getMetatileIdCoords(uint16_t);
bool shouldAcceptEvent(QGraphicsSceneMouseEvent*);
bool positionIsValid(const QPoint &pos) const;
bool selectionIsValid();
void hoverChanged();
signals:
void hoveredMetatileSelectionChanged(uint16_t);