1 #ifndef __lib_gui_ewidgetdesktop_h
2 #define __lib_gui_ewidgetdesktop_h
4 #include <lib/gdi/grc.h>
5 #include <lib/base/eptrlist.h>
11 class eWidgetDesktop: public Object
15 gRegion m_dirty_region;
16 gRegion m_background_region;
18 gRGB m_background_color;
20 eWidgetDesktop(eSize screen);
22 void addRootWidget(eWidget *root, int top);
23 void removeRootWidget(eWidget *root);
24 void recalcClipRegions();
26 void invalidate(const gRegion ®ion);
30 void setBackgroundColor(gRGB col);
32 void setPalette(gPixmap &pm);
34 void setRedrawTask(eMainloop &ml);
36 void makeCompatiblePixmap(gPixmap &pm);
38 ePtrList<eWidget> m_root;
39 void calcWidgetClipRegion(eWidget *widget, gRegion &parent_visible);
41 eMainloop *m_mainloop;