gui: make resources type safe
- add string, int, color and resource loading helpers
- use typed resource classes, and some cleanup in loading code
- remove abstract GetResource() to enforce type safe access
- add height and width query methods to resources and use them
- minor cleanup
- simplify LoadPlacement
Change-Id: I9b81785109a80b3806ad6b50cba4d893b87b0db1
diff --git a/gui/pages.hpp b/gui/pages.hpp
index b042c0d..31ccadb 100644
--- a/gui/pages.hpp
+++ b/gui/pages.hpp
@@ -17,12 +17,15 @@
TOUCH_REPEAT = 4
};
-typedef struct {
+struct COLOR {
unsigned char red;
unsigned char green;
unsigned char blue;
unsigned char alpha;
-} COLOR;
+ COLOR() : red(0), green(0), blue(0), alpha(0) {}
+ COLOR(unsigned char r, unsigned char g, unsigned char b, unsigned char a = 255)
+ : red(r), green(g), blue(b), alpha(a) {}
+};
// Utility Functions
int ConvertStrToColor(std::string str, COLOR* color);