aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorRay <raysan5@gmail.com>2016-08-09 23:03:29 +0200
committerRay <raysan5@gmail.com>2016-08-09 23:03:29 +0200
commitcc2b3228d18f3bc4cd58ee4298cde78846cfde9e (patch)
treee61349337f8d89782f006093cc3199b3c60eb1c6 /src
parentcaecb1c1ebbad0882c7ccd811ffb16d8e02a859f (diff)
downloadraylib-cc2b3228d18f3bc4cd58ee4298cde78846cfde9e.tar.gz
raylib-cc2b3228d18f3bc4cd58ee4298cde78846cfde9e.zip
Updated for C++
Diffstat (limited to 'src')
-rw-r--r--src/raylib.h94
1 files changed, 34 insertions, 60 deletions
diff --git a/src/raylib.h b/src/raylib.h
index 8045e436..41c32476 100644
--- a/src/raylib.h
+++ b/src/raylib.h
@@ -236,67 +236,44 @@
#define ANDROID_VOLUME_UP 24
#define ANDROID_VOLUME_DOWN 25
-// Some Basic Colors
-// NOTE: Custom raylib color palette for amazing visuals on WHITE background
+// NOTE: MSC C++ compiler does not support compound literals (C99 feature)
+// Plain structures in C++ (without constructors) can be initialized from { } initializers.
#ifdef __cplusplus
- // NOTE: MSC C++ compiler does not support compound literals (C99 feature)
- #define LIGHTGRAY Color(200, 200, 200, 255) // Light Gray
- #define GRAY Color(130, 130, 130, 255) // Gray
- #define DARKGRAY Color(80, 80, 80, 255) // Dark Gray
- #define YELLOW Color(253, 249, 0, 255) // Yellow
- #define GOLD Color(255, 203, 0, 255) // Gold
- #define ORANGE Color(255, 161, 0, 255) // Orange
- #define PINK Color(255, 109, 194, 255) // Pink
- #define RED Color(230, 41, 55, 255) // Red
- #define MAROON Color(190, 33, 55, 255) // Maroon
- #define GREEN Color(0, 228, 48, 255) // Green
- #define LIME Color(0, 158, 47, 255) // Lime
- #define DARKGREEN Color(0, 117, 44, 255) // Dark Green
- #define SKYBLUE Color(102, 191, 255, 255) // Sky Blue
- #define BLUE Color(0, 121, 241, 255) // Blue
- #define DARKBLUE Color(0, 82, 172, 255) // Dark Blue
- #define PURPLE Color(200, 122, 255, 255) // Purple
- #define VIOLET Color(135, 60, 190, 255) // Violet
- #define DARKPURPLE Color(112, 31, 126, 255) // Dark Purple
- #define BEIGE Color(211, 176, 131, 255) // Beige
- #define BROWN Color(127, 106, 79, 255) // Brown
- #define DARKBROWN Color(76, 63, 47, 255) // Dark Brown
-
- #define WHITE Color(255, 255, 255, 255) // White
- #define BLACK Color(0, 0, 0, 255) // Black
- #define BLANK Color(0, 0, 0, 0) // Blank (Transparent)
- #define MAGENTA Color(255, 0, 255, 255) // Magenta
- #define RAYWHITE Color(245, 245, 245, 255) // My own White (raylib logo)
+ #define CLITERAL
#else
- #define LIGHTGRAY (Color){ 200, 200, 200, 255 } // Light Gray
- #define GRAY (Color){ 130, 130, 130, 255 } // Gray
- #define DARKGRAY (Color){ 80, 80, 80, 255 } // Dark Gray
- #define YELLOW (Color){ 253, 249, 0, 255 } // Yellow
- #define GOLD (Color){ 255, 203, 0, 255 } // Gold
- #define ORANGE (Color){ 255, 161, 0, 255 } // Orange
- #define PINK (Color){ 255, 109, 194, 255 } // Pink
- #define RED (Color){ 230, 41, 55, 255 } // Red
- #define MAROON (Color){ 190, 33, 55, 255 } // Maroon
- #define GREEN (Color){ 0, 228, 48, 255 } // Green
- #define LIME (Color){ 0, 158, 47, 255 } // Lime
- #define DARKGREEN (Color){ 0, 117, 44, 255 } // Dark Green
- #define SKYBLUE (Color){ 102, 191, 255, 255 } // Sky Blue
- #define BLUE (Color){ 0, 121, 241, 255 } // Blue
- #define DARKBLUE (Color){ 0, 82, 172, 255 } // Dark Blue
- #define PURPLE (Color){ 200, 122, 255, 255 } // Purple
- #define VIOLET (Color){ 135, 60, 190, 255 } // Violet
- #define DARKPURPLE (Color){ 112, 31, 126, 255 } // Dark Purple
- #define BEIGE (Color){ 211, 176, 131, 255 } // Beige
- #define BROWN (Color){ 127, 106, 79, 255 } // Brown
- #define DARKBROWN (Color){ 76, 63, 47, 255 } // Dark Brown
-
- #define WHITE (Color){ 255, 255, 255, 255 } // White
- #define BLACK (Color){ 0, 0, 0, 255 } // Black
- #define BLANK (Color){ 0, 0, 0, 0 } // Blank (Transparent)
- #define MAGENTA (Color){ 255, 0, 255, 255 } // Magenta
- #define RAYWHITE (Color){ 245, 245, 245, 255 } // My own White (raylib logo)
+ #define CLITERAL (Color)
#endif
+// Some Basic Colors
+// NOTE: Custom raylib color palette for amazing visuals on WHITE background
+#define LIGHTGRAY CLITERAL{ 200, 200, 200, 255 } // Light Gray
+#define GRAY CLITERAL{ 130, 130, 130, 255 } // Gray
+#define DARKGRAY CLITERAL{ 80, 80, 80, 255 } // Dark Gray
+#define YELLOW CLITERAL{ 253, 249, 0, 255 } // Yellow
+#define GOLD CLITERAL{ 255, 203, 0, 255 } // Gold
+#define ORANGE CLITERAL{ 255, 161, 0, 255 } // Orange
+#define PINK CLITERAL{ 255, 109, 194, 255 } // Pink
+#define RED CLITERAL{ 230, 41, 55, 255 } // Red
+#define MAROON CLITERAL{ 190, 33, 55, 255 } // Maroon
+#define GREEN CLITERAL{ 0, 228, 48, 255 } // Green
+#define LIME CLITERAL{ 0, 158, 47, 255 } // Lime
+#define DARKGREEN CLITERAL{ 0, 117, 44, 255 } // Dark Green
+#define SKYBLUE CLITERAL{ 102, 191, 255, 255 } // Sky Blue
+#define BLUE CLITERAL{ 0, 121, 241, 255 } // Blue
+#define DARKBLUE CLITERAL{ 0, 82, 172, 255 } // Dark Blue
+#define PURPLE CLITERAL{ 200, 122, 255, 255 } // Purple
+#define VIOLET CLITERAL{ 135, 60, 190, 255 } // Violet
+#define DARKPURPLE CLITERAL{ 112, 31, 126, 255 } // Dark Purple
+#define BEIGE CLITERAL{ 211, 176, 131, 255 } // Beige
+#define BROWN CLITERAL{ 127, 106, 79, 255 } // Brown
+#define DARKBROWN CLITERAL{ 76, 63, 47, 255 } // Dark Brown
+
+#define WHITE CLITERAL{ 255, 255, 255, 255 } // White
+#define BLACK CLITERAL{ 0, 0, 0, 255 } // Black
+#define BLANK CLITERAL{ 0, 0, 0, 0 } // Blank (Transparent)
+#define MAGENTA CLITERAL{ 255, 0, 255, 255 } // Magenta
+#define RAYWHITE CLITERAL{ 245, 245, 245, 255 } // My own White (raylib logo)
+
//----------------------------------------------------------------------------------
// Types and Structures Definition
//----------------------------------------------------------------------------------
@@ -342,9 +319,6 @@ typedef struct Color {
unsigned char g;
unsigned char b;
unsigned char a;
-#ifdef __cplusplus
- Color(unsigned char cr, unsigned char cg, unsigned char cb, unsigned char ca) : r(cr), g(cg), b(cb), a(ca) { }
-#endif
} Color;
// Rectangle type