Velvet 0.1a
A beginner-friendly C++ GUI framework built on SFML.
Loading...
Searching...
No Matches
Image.hpp
Go to the documentation of this file.
1#pragma once
2#include <SFML/System/Vector2.hpp>
4#include <SFML/Graphics/Color.hpp>
5
9class Image : public Widget {
10private:
11 sf::Sprite imageSprite;
12 sf::Texture imageTexture;
13
14 void draw(sf::RenderWindow &window) override;
15 void update(sf::RenderWindow &window) override;
16
17public:
19 void render(sf::RenderWindow &window) override;
21 void setPosition(float x, float y) override;
23 sf::Vector2f getDimensions() override;
24
29 Image(std::string filePath);
30
34 void setScale(float scaleFactorX, float scaleFactorY);
35
40 void setImage(std::string filePath);
41};
Image widget backed by SFML texture + sprite.
Definition Image.hpp:9
void setPosition(float x, float y) override
Set top-left image position.
void setScale(float scaleFactorX, float scaleFactorY)
Scale sprite along x/y axes.
sf::Vector2f getDimensions() override
Get current rendered image dimensions.
void setImage(std::string filePath)
Set image from disk.
Image(std::string filePath)
Load image from disk.
void render(sf::RenderWindow &window) override
Render image sprite.
Base class for all Velvet UI elements.
Definition Widget.hpp:16
float y
Definition Widget.hpp:31
float x
Definition Widget.hpp:31