forked from NaiJi/project-kyoku
27 lines
559 B
C
27 lines
559 B
C
|
#pragma once
|
||
|
|
||
|
#include "core/area.h"
|
||
|
#include "core/color.h"
|
||
|
|
||
|
namespace kku
|
||
|
{
|
||
|
|
||
|
class Rectangle
|
||
|
{
|
||
|
public:
|
||
|
virtual ~Rectangle() = default;
|
||
|
virtual void setRect(const Area<float>& rect) = 0;
|
||
|
virtual Area<float> getRect() const = 0;
|
||
|
|
||
|
virtual void setPosition(const Point& position) = 0;
|
||
|
virtual Point getPosition() const = 0;
|
||
|
virtual void move(const kku::Vector2<float>& delta) = 0;
|
||
|
|
||
|
virtual void setColor(const Color& color) = 0;
|
||
|
virtual bool contains(const kku::Point& position) const = 0;
|
||
|
|
||
|
virtual void display() = 0;
|
||
|
};
|
||
|
|
||
|
}
|