2025-08-02 20:10:33 +03:00
|
|
|
#pragma once
|
|
|
|
|
#include "DrawingProgramEditToolBase.hpp"
|
2025-12-26 10:40:58 +03:00
|
|
|
#include "../../../CanvasComponents/CanvasComponentContainer.hpp"
|
|
|
|
|
#include "../../../CanvasComponents//EllipseCanvasComponent.hpp"
|
2025-08-02 20:10:33 +03:00
|
|
|
#include <any>
|
|
|
|
|
#include <Helpers/SCollision.hpp>
|
|
|
|
|
|
|
|
|
|
class DrawingProgram;
|
|
|
|
|
|
|
|
|
|
class EllipseDrawEditTool : public DrawingProgramEditToolBase {
|
|
|
|
|
public:
|
2026-04-04 17:52:43 +03:00
|
|
|
EllipseDrawEditTool(DrawingProgram& initDrawP, CanvasComponentContainer::ObjInfo* initComp);
|
|
|
|
|
virtual void edit_start(EditTool& editTool, std::any& prevData) override;
|
|
|
|
|
virtual void commit_edit_updates(std::any& prevData) override;
|
|
|
|
|
virtual bool edit_update() override;
|
2026-04-12 12:36:00 +03:00
|
|
|
virtual void edit_gui(Toolbar& t) override;
|
2025-08-02 20:10:33 +03:00
|
|
|
private:
|
|
|
|
|
void commit();
|
|
|
|
|
|
2025-12-15 15:36:42 +03:00
|
|
|
std::optional<EllipseCanvasComponent::Data> oldData;
|
2025-08-02 20:10:33 +03:00
|
|
|
};
|