Added all canvas component classes

This commit is contained in:
Yousef Khadadeh 2025-12-13 13:03:27 +03:00
parent cfd6f4b4e0
commit 228469c33d
32 changed files with 1369 additions and 143 deletions

View file

@ -0,0 +1,27 @@
#include "CanvasComponent.hpp"
#include "BrushStrokeCanvasComponent.hpp"
#include "ImageCanvasComponent.hpp"
#include "EllipseCanvasComponent.hpp"
#include "RectangleCanvasComponent.hpp"
#include "TextBoxCanvasComponent.hpp"
void CanvasComponent::update(DrawingProgram& drawP) {
}
CanvasComponent* CanvasComponent::allocate_comp(CanvasComponent::CompType type) {
switch(type) {
case CanvasComponent::CompType::BRUSHSTROKE:
return new BrushStrokeCanvasComponent;
case CanvasComponent::CompType::RECTANGLE:
return new RectangleCanvasComponent;
case CanvasComponent::CompType::ELLIPSE:
return new EllipseCanvasComponent;
case CanvasComponent::CompType::TEXTBOX:
return new TextBoxCanvasComponent;
case CanvasComponent::CompType::IMAGE:
return new ImageCanvasComponent;
}
return nullptr;
}
CanvasComponent::~CanvasComponent() {}