#ifndef TEMPERATURE_ITEM_SLOT_HPP_
#define TEMPERATURE_ITEM_SLOT_HPP_

#include <ToolTip/ToolTip.hpp>
#include <Widget/StaticItemSlot/ItemSlot/ItemSlot.hpp>

class NuclearReactorController;

/**
 * @brief An item slot which shows an item and a temperature.
 */
class TemperatureItemSlot : public ItemSlot
{
private:
    NuclearReactorController *ctrl;

    void addTemperatureToToolTip(ToolTip &tip);

public:
    TemperatureItemSlot(NuclearReactorController *ctrl, int slot);

    virtual void draw(GraphicsContext &context) override;
    virtual void onHoveringOverEmpty(GraphicsContext &context) override;
    virtual void getExtraToolTipLines(ToolTip &tip) override;
};

#endif