-#define myRGB(r,g,b)((r<<16)+(g<<8)+(b))
-#define GetRValue(c) ((((c&0x00FF0000)>>16)<<8)+((c&0x00FF0000)>>16))
-#define GetGValue(c) ((((c&0x0000FF00)>>8)<<8)+((c&0x0000FF00)>>8))
-#define GetBValue(c) (((c&0x000000FF)<<8)+(c&0x000000FF))
+#define myRGB(r,g,b) { ((r) << 8) + (r) , ((g) << 8) + (g), ((b) << 8) + (b) }
+#define GetRValue(c) ((c).red)
+#define GetGValue(c) ((c).green)
+#define GetBValue(c) ((c).blue)