29#include <TGUI/String.hpp>
30#include <TGUI/Vertex.hpp>
32#if !TGUI_EXPERIMENTAL_USE_STD_MODULE
38#if TGUI_HAS_RENDERER_BACKEND_SFML_GRAPHICS && !TGUI_DISABLE_SFML_CONVERSIONS
39 #include <SFML/Graphics/Color.hpp>
44TGUI_MODULE_EXPORT
namespace tgui
53 TGUI_API Color constructColorFromString(
const String&
string);
57TGUI_MODULE_EXPORT
namespace tgui
67#if defined(TGUI_SYSTEM_WINDOWS) && TGUI_COMPILED_WITH_CPP_VER >= 17
102#if TGUI_HAS_RENDERER_BACKEND_SFML_GRAPHICS && !TGUI_DISABLE_SFML_CONVERSIONS
108 constexpr Color(
const sf::Color& color) :
126 constexpr Color(std::uint8_t red, std::uint8_t green, std::uint8_t blue, std::uint8_t alpha = 255) :
136#if defined (_MSC_VER)
137# pragma warning(push)
138# pragma warning(disable: 26495)
148 Color{priv::constructColorFromString(string)}
151#if defined (_MSC_VER)
173 TGUI_NODISCARD
constexpr bool isSet()
const
178#if TGUI_HAS_RENDERER_BACKEND_SFML_GRAPHICS && !TGUI_DISABLE_SFML_CONVERSIONS
184 operator sf::Color()
const
186 return {m_red, m_green, m_blue, m_alpha};
206 TGUI_NODISCARD
constexpr std::uint8_t
getRed()
const
217 TGUI_NODISCARD
constexpr std::uint8_t
getGreen()
const
228 TGUI_NODISCARD
constexpr std::uint8_t
getBlue()
const
239 TGUI_NODISCARD
constexpr std::uint8_t
getAlpha()
const
250 return (m_isSet == rhs.m_isSet)
251 && (m_red == rhs.m_red)
252 && (m_green == rhs.m_green)
253 && (m_blue == rhs.m_blue)
254 && (m_alpha == rhs.m_alpha);
263 return !(*
this == right);
280 static const std::array<std::pair<StringView, Color>, 9> colorNamesMap;
286 bool m_isSet =
false;
287 std::uint8_t m_red = 0;
288 std::uint8_t m_green = 0;
289 std::uint8_t m_blue = 0;
290 std::uint8_t m_alpha = 0;
296#if TGUI_COMPILED_WITH_CPP_VER >= 17
298 inline constexpr const Color
Color::White {255, 255, 255};
299 inline constexpr const Color
Color::Red {255, 0, 0};
301 inline constexpr const Color
Color::Blue { 0, 0, 255};
304 inline constexpr const Color
Color::Cyan { 0, 255, 255};
307 inline constexpr const std::array<std::pair<StringView, Color>, 9> Color::colorNamesMap
342 TGUI_NODISCARD TGUI_API Color constructColorFromString(
const String&
string);
Wrapper for colors.
Definition Color.hpp:74
static TGUI_NODISCARD constexpr Color applyOpacity(const Color &color, float alpha)
Returns the color with its alpha channel multiplied with the alpha parameter.
Definition Color.hpp:80
static const Color Transparent
Transparent (black) predefined color.
Definition Color.hpp:278
TGUI_NODISCARD constexpr bool isSet() const
Checks if a color was set.
Definition Color.hpp:173
TGUI_NODISCARD constexpr bool operator!=(const Color &right) const
Compares the color with another one.
Definition Color.hpp:261
constexpr Color(const sf::Color &color)
Creates the object from an sf::Color.
Definition Color.hpp:108
TGUI_NODISCARD constexpr std::uint8_t getAlpha() const
Returns the alpha component of the color.
Definition Color.hpp:239
static const Color Black
Black predefined color.
Definition Color.hpp:270
static const Color Green
Green predefined color.
Definition Color.hpp:273
TGUI_NODISCARD constexpr std::uint8_t getRed() const
Returns the red component of the color.
Definition Color.hpp:206
constexpr Color()
Creates the object without a color.
Definition Color.hpp:93
TGUI_NODISCARD constexpr std::uint8_t getBlue() const
Returns the blue component of the color.
Definition Color.hpp:228
static const Color White
White predefined color.
Definition Color.hpp:271
Color(const char *string)
Creates the object from a string.
Definition Color.hpp:162
TGUI_NODISCARD constexpr bool operator==(const Color &rhs) const
Compares the color with another one.
Definition Color.hpp:248
static const Color Cyan
Cyan predefined color.
Definition Color.hpp:277
static const Color Magenta
Magenta predefined color.
Definition Color.hpp:276
static const Color Yellow
Yellow predefined color.
Definition Color.hpp:275
static const Color Red
Red predefined color.
Definition Color.hpp:272
static const Color Blue
Blue predefined color.
Definition Color.hpp:274
constexpr Color(std::uint8_t red, std::uint8_t green, std::uint8_t blue, std::uint8_t alpha=255)
Creates the object from an the RGB or RGBA values.
Definition Color.hpp:126
TGUI_NODISCARD constexpr std::uint8_t getGreen() const
Returns the green component of the color.
Definition Color.hpp:217
Color(const String &string)
Creates the object from a string.
Definition Color.hpp:147
Wrapper class to store strings.
Definition String.hpp:101
Namespace that contains all TGUI functions and classes.
Definition AbsoluteOrRelativeValue.hpp:39