]> git.sesse.net Git - ccbs/blobdiff - bigscreen/fonts.h
Parametrize color scheme into a separate header file.
[ccbs] / bigscreen / fonts.h
index 5377ad0853773c5506a00dafeaa2316fa48d5a8c..6950168432abb4f0d6973f91ef5ba6776d50b8d3 100644 (file)
@@ -5,8 +5,24 @@
 #include FT_FREETYPE_H
 #include <vector>
 #include "widestring.h"
+#include "design.h"
+
+struct TextDefer {
+       widestring str;
+       double size;
+       unsigned xpos, ypos;
+       int r, g, b;
+       int rn, gn, bn;
+
+       bool changed;
+};
 
 void init_freetype();
-unsigned my_draw_text(const widestring &str, unsigned char *buf, int xpos, int ypos, bool real_render, int r, int g, int b);
+void set_screen_size(unsigned width, unsigned height);
+unsigned my_draw_text(const widestring &str, unsigned char *buf, double size, int xpos = 0, int ypos = 0, int r = DATA_RED, int g = DATA_GREEN, int b = DATA_BLUE);
+
+// draw_all_deferred_text draws every string in current that is not the same in old, in red
+void my_draw_text_deferred(std::vector<TextDefer> &td, const widestring &str, double size, int xpos, int ypos, int r = DATA_RED, int g = DATA_GREEN, int b = DATA_BLUE, int rn = FRESH_DATA_RED, int gn = FRESH_DATA_GREEN, int bn = FRESH_DATA_BLUE);
+void draw_all_deferred_text(unsigned char *buf, std::vector<TextDefer> &current, std::vector<TextDefer> &old);
 
 #endif /* !defined(_FONTS_H) */