- make invlidateEntry public
[enigma2.git] / lib / gui / ewidgetdesktop.h
index 197693f8bb92e53166c5a0d0cc880450d8bd4c6a..c917e36a6f55cf294fad7598e257d64d55c775e8 100644 (file)
@@ -5,25 +5,41 @@
 #include <lib/base/eptrlist.h>
 
 class eWidget;
+class eMainloop;
+class eTimer;
 
-class eWidgetDesktop
+class eWidgetDesktop: public Object
 {
 public: // weil debug
        eSize m_screen_size;
        gRegion m_dirty_region;
+       gRegion m_background_region;
        ePtr<gDC> m_dc;
+       gRGB m_background_color;
 public:
        eWidgetDesktop(eSize screen);
        ~eWidgetDesktop();
        void addRootWidget(eWidget *root, int top);
+       void removeRootWidget(eWidget *root);
        void recalcClipRegions();
        
        void invalidate(const gRegion &region);
        void paint();
        void setDC(gDC *dc);
+       
+       void setBackgroundColor(gRGB col);
+       
+       void setPalette(gPixmap &pm);
+       
+       void setRedrawTask(eMainloop &ml);
+       
+       void makeCompatiblePixmap(gPixmap &pm);
 private:
        ePtrList<eWidget> m_root;
        void calcWidgetClipRegion(eWidget *widget, gRegion &parent_visible);
+       
+       eMainloop *m_mainloop;
+       eTimer *m_timer;
 };
 
 #endif