#pragma once #include #include "../DrawData.hpp" #include "../DrawComponents/DrawComponent.hpp" class DrawingProgram; class EraserTool { public: EraserTool(DrawingProgram& initDrawP); void gui_toolbox(); void tool_update(); void reset_tool(); void draw(SkCanvas* canvas, const DrawData& drawData); bool prevent_undo_or_redo(); std::unordered_set erasedComponents; std::unordered_set> erasedBVHNodes; private: DrawingProgram& drawP; };