Home | News | Projects | Releases
Bugs | RFE | Repositories | Help
Replace reference of XAB with Xestia Calendar common/colour.h
[xestiacalendar/.git] / source / common / colour.h
1 // colour.h - Colour Structures
2 //
3 // (c) 2016 Xestia Software Development.
4 //
5 // This file is part of Xestia Calendar.
6 //
7 // Xestia Calendar is free software: you can redistribute it and/or modify
8 // it under the terms of the GNU General Public License as published by the
9 // Free Software Foundation, version 3 of the license.
10 //
11 // Xestia Calendar is distributed in the hope that it will be useful,
12 // but WITHOUT ANY WARRANTY; without even the implied warranty of
13 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 // GNU General Public License for more details.
15 //
16 // You should have received a copy of the GNU General Public License along
17 // with Xestia Calendar. If not, see <http://www.gnu.org/licenses/>
19 #include <string>
20 #include "text.h"
22 #ifndef __COMMON_COLOUR_H__
23 #define __COMMON_COLOUR_H__
25 using namespace std;
27 struct Colour{
28         
29         int red;
30         int blue;
31         int green;
32         int alpha;
34         operator string() {
35                 
36                 string ColourOut;
37                 string ColourOutHex;
38         
39                 ColourOut = "#";
40                 
41                 // Convert the red value.
42                 
43                 if (red > 255){
44                         ColourOut += "FF";
45                 } else if (red < 0) {
46                         ColourOut += "00";                      
47                 } else {
48                         IntToHex(&red, &ColourOutHex, 2);
49                         ColourOut += ColourOutHex;
50                 }
51                 
52                 // Convert the green value.
54                 if (green > 255){
55                         ColourOut += "FF";
56                 } else if (green < 0){
57                         ColourOut += "00";                      
58                 } else {
59                         IntToHex(&green, &ColourOutHex, 2);
60                         ColourOut += ColourOutHex;                      
61                 }
62                 
63                 // Convert the blue value.
65                 if (blue > 255){
66                         ColourOut += "FF";
67                 } else if (blue < 0) {
68                         ColourOut += "00";                      
69                 } else {
70                         IntToHex(&blue, &ColourOutHex, 2);
71                         ColourOut += ColourOutHex;
72                 }
73                 
74                 // Convert the alpha value.
75                 
76                 if (alpha > 255){
77                         ColourOut += "FF";
78                 } else if (alpha < 0){
79                         ColourOut += "00";
80                 } else {
81                         IntToHex(&alpha, &ColourOutHex, 2);
82                         ColourOut += ColourOutHex;
83                 }
84                 
85                 return ColourOut;
86                 
87         }
88         
89 };
91 #endif
Xestia Software Development
Yn Maystri
© 2006 - 2019 Xestia Software Development
Software

Xestia Address Book
Xestia Calendar
Development

Xestia Gelforn
Everything else

About
News
Privacy Policy