#ifndef PAGE_HPP_
#define PAGE_HPP_

#include <Material/Material.hpp>
#include <Widget/Widget.hpp>

/**
 * @brief Represents a 'page' in various widgets such as a tab list or category view.
 */
struct Page
{
    virtual ~Page();

    Material &icon;
    std::string tip;
    Widget* body;

    /**
     * @brief Construct a page.
     * 
     * @param icon The icon to display on the tab (8x8).
     * @param tip The tooltip to display.
     * @param body The widget to display in the body.
     */
    Page(Material &icon, std::string tip, Widget *body);
};

#endif