#ifndef MILESTONE_VIEW_HPP_
#define MILESTONE_VIEW_HPP_

#include <AchievementFilter/AchievementFilter.hpp>
#include <Entity/PhysicsEntity/CameraEntity/Player/Player.hpp>
#include <Milestone/Milestone.hpp>
#include <Widget/Layout/CompoundWidget/CompoundWidget.hpp>

/**
 * @brief Displays a frame with information about the progress of the milestone.
 */
class MilestoneView final : public CompoundWidget
{
public:
    MilestoneView(
        Player &player,
        Milestone &milestone,
        std::function<void(std::string, int)> onAchievementSelected,
        AchievementFilter &filter
    );
};

#endif