4#ifndef MALENA_THUMBNAILPICKER_H
5#define MALENA_THUMBNAILPICKER_H
26 enum class Flag { ACTIVE };
58 std::vector<std::unique_ptr<sf::Texture>> _textures;
59 std::vector<std::string> _captions;
60 std::vector<sf::FloatRect> _cells;
68 float _captionH = 24.f;
71 bool _prevDown =
false;
73 std::function<void(
int)> _onSelectionChanged;
89 [[nodiscard]]
int count()
const;
static const sf::Font & getDefault()
Return the built-in Arial font.
Base class for all Malena manifests.
ThumbnailPickerManifest::Flag Flag
void addThumbnail(const sf::Image &image, const std::string &caption)
sf::Vector2f getPosition() const override
void draw(sf::RenderTarget &target, sf::RenderStates states) const override
void setPosition(const sf::Vector2f &position) override
void setActive(bool active)
void onSelectionChanged(std::function< void(int)> cb)
void setSelectedIndex(int index)
void setColumns(int columns)
ThumbnailPicker & operator=(const ThumbnailPicker &)=delete
sf::FloatRect getGlobalBounds() const override
void setTileSize(float w, float h)
ThumbnailPicker(const sf::Font &font=FontManager<>::getDefault())
ThumbnailPicker(const ThumbnailPicker &)=delete
int getSelectedIndex() const
Component< M, Traits... > ComponentWith
Alias for Component<M, Traits...>.
Vector2< float > Vector2f