]> git.sesse.net Git - ccbs/blobdiff - bigscreen/rotatescreen.h
Shape text using Pango and HarfBuzz; gives us nice ligatures and exotic scripts.
[ccbs] / bigscreen / rotatescreen.h
index 0883ca27cc4d24591b4e5d764d28e711820c91d8..64999123a2b044c9a8f2a97b08a7f111a5d3c009 100644 (file)
  * one at a time). :-)
  */
 struct Subscreen {
-       unsigned char *buf;
+       unsigned char *redbuf, *buf;
        GenericScreen *screen;
 };
 
 class RotateScreen : public GenericScreen {
 private:
+       unsigned char *fadefrom_buf;
        bool valid;
        std::vector<Subscreen> subscreens;
        unsigned current_screen;
 
-       struct timeval last_update;
+       struct timeval last_update, fade_started;
+       bool in_fade, fade_found_start_time, fade_to_new_info;
 
        bool needs_update();
+       bool can_update();
        
 public:
        RotateScreen();
        virtual ~RotateScreen();
 
        bool check_invalidated();
-       void draw(unsigned char *buf);
+       void draw(unsigned char *buf, unsigned width, unsigned height);
 
        void add_screen(GenericScreen *screen);
 //     void remove_screen(GenericScreen *screen);