#pragma once #include #include "../DrawData.hpp" #include #include "../CoordSpaceHelper.hpp" #include "../DrawComponents/DrawComponent.hpp" class DrawingProgram; class LassoSelectTool { public: LassoSelectTool(DrawingProgram& initDrawP); void gui_toolbox(); void tool_update(); void draw(SkCanvas* canvas, const DrawData& drawData); void reset_tool(); bool prevent_undo_or_redo(); private: struct LassoSelectControls { int selectionMode = 0; CoordSpaceHelper coords; std::vector lassoPoints; } controls; DrawingProgram& drawP; };