#pragma once

#include "GeometryNode.h"

class CircleNode : public GeometryNode
{
public:
    CircleNode(const DiscretePoint& location, unsigned radius);

    Type getType();

    unsigned getRadius() const;

    SceneItem* getSceneItem(std::size_t idx) const override;
    unsigned getNumSceneItems() const override;

    void setRadius(unsigned radius);

    void update(FontsManager* fontsManager) override;
private:
    unsigned mRadius{1};

    std::unique_ptr<SceneModel> mBackgroundItem;
    std::unique_ptr<SceneModel> mOutlineItem;
};
