#pragma once #ifndef PAINTSELECTION_H #define PAINTSELECTION_H #include "block.h" #include #include struct MetatileSelectionItem { bool enabled; uint16_t metatileId; }; struct CollisionSelectionItem { bool enabled; uint16_t collision; uint16_t elevation; }; class PaintSelection { public: QPoint dimensions; virtual bool paintNormal(int, Block*) = 0; }; class MetatileSelection: public PaintSelection { public: MetatileSelection() {} bool paintNormal(int index, Block *block) override; bool hasCollision = false; QList metatileItems; QList collisionItems; }; class StampSelection: public PaintSelection { public: StampSelection() {} bool paintNormal(int index, Block *block) override; QList stampIds; }; #endif // PAINTSELECTION_H