MyGUI 3.4.3
MyGUI_Colour.h
Go to the documentation of this file.
1/*
2 * This source file is part of MyGUI. For the latest info, see http://mygui.info/
3 * Distributed under the MIT License
4 * (See accompanying file COPYING.MIT or copy at http://opensource.org/licenses/MIT)
5 */
6
7#ifndef MYGUI_COLOUR_H_
8#define MYGUI_COLOUR_H_
9
10#include "MyGUI_Prerequest.h"
11#include "MyGUI_Types.h"
12
13namespace MyGUI
14{
15
17 {
18 public:
19 Colour() = default;
20 Colour(float _red, float _green, float _blue, float _alpha = 1);
21 explicit Colour(std::string_view _value);
22
23 bool operator==(Colour const& _value) const;
24 bool operator!=(Colour const& _value) const;
25
26 void set(float _red, float _green, float _blue, float _alpha = 1);
27
28 void clear();
29
30 std::string print() const;
31
32 static Colour parse(std::string_view _value);
33
34 friend std::ostream& operator<<(std::ostream& _stream, const Colour& _value)
35 {
36 return operatorShiftLeft(_stream, _value);
37 }
38
39 friend std::istream& operator>>(std::istream& _stream, Colour& _value)
40 {
41 return operatorShiftRight(_stream, _value);
42 }
43
44 static std::ostream& operatorShiftLeft(std::ostream& _stream, const Colour& _value);
45 static std::istream& operatorShiftRight(std::istream& _stream, Colour& _value);
46
47 public:
48 float red{1.0f};
49 float green{1.0f};
50 float blue{1.0f};
51 float alpha{1.0f};
52
53 static const Colour Zero;
54 static const Colour Black;
55 static const Colour White;
56 static const Colour Red;
57 static const Colour Green;
58 static const Colour Blue;
59 };
60
61} // namespace MyGUI
62
63#endif // MYGUI_COLOUR_H_
#define MYGUI_EXPORT
static Colour parse(std::string_view _value)
bool operator!=(Colour const &_value) const
std::string print() const
friend std::ostream & operator<<(std::ostream &_stream, const Colour &_value)
static const Colour Green
static const Colour Zero
static std::istream & operatorShiftRight(std::istream &_stream, Colour &_value)
static const Colour Red
void set(float _red, float _green, float _blue, float _alpha=1)
static const Colour Blue
Colour()=default
static const Colour White
static std::ostream & operatorShiftLeft(std::ostream &_stream, const Colour &_value)
bool operator==(Colour const &_value) const
friend std::istream & operator>>(std::istream &_stream, Colour &_value)
static const Colour Black