Use union in CTextColor

This commit is contained in:
Phillip Stephens 2023-01-11 14:03:38 -08:00
parent ab1f7c19a2
commit b49d6096c7
1 changed files with 27 additions and 4 deletions

View File

@ -3,15 +3,38 @@
#include <types.h>
#ifdef __MWERKS__
#pragma cpp_extensions on
#endif
class CTextColor {
public:
CTextColor(uchar r, uchar g, uchar b, uchar a) : mR(r), mG(g), mB(b), mA(a) {}
CTextColor(const CTextColor& other) : mR(other.mR), mG(other.mG), mB(other.mB), mA(other.mA) {}
const CTextColor& operator=(const CTextColor& other) {
mR = other.mR;
mG = other.mG;
mB = other.mB;
mA = other.mA;
return *this;
}
private:
uchar mR;
uchar mG;
uchar mB;
uchar mA;
union {
struct {
uchar mR;
uchar mG;
uchar mB;
uchar mA;
};
uint mRgba;
};
};
#ifdef __MWERKS__
#pragma cpp_extensions off
#endif
#endif // _CTEXTCOLOR