#ifndef OUTLINEAREA_H
#define OUTLINEAREA_H
#include "activearea.h"
#include "activecurve.h"
class OutlineArea: public ActiveArea {
protected:
ActiveCurve curve;
ActivePoint::Handle w;
Real get_width() const;
void set_width(const Real &width);
void put_bezier(const Context &context, const Bezier &bezier, const Real &width = 0, bool jump = false);
void put_hermite(const Context &context, const Hermite &hermite, const Real &width = 0, bool jump = false)
{ put_bezier(context, hermite.get_bezier(), width, jump); }
void put_curve(const Context &context, const ActiveCurve &curve, const Real &width);
void draw_curve(const Context &context, const ActiveCurve &curve, const Real &width);
void on_point_move(const ActivePoint::Handle &point, const Vector &oldposition, const Vector &newposition) override;
void on_draw_content(const Context &context) override;
public:
OutlineArea();
};
#endif