X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/ba02fb4aced5868d047a5bffbd2ed87583daee4d..3cddda083f4ace59e279f9f4f6ae12bad079d33b:/lib/gui/ewidget.h diff --git a/lib/gui/ewidget.h b/lib/gui/ewidget.h index fa8cd8ca..cb39a000 100644 --- a/lib/gui/ewidget.h +++ b/lib/gui/ewidget.h @@ -5,8 +5,6 @@ #include /* for eSmartPtrList */ #include /* for eWindowStyle */ -class eWindowStyle; - class eWidget { friend class eWidgetDesktop; @@ -35,6 +33,12 @@ public: int getStyle(ePtr &style) { if (!m_style) return 1; style = m_style; return 0; } void setStyle(eWindowStyle *style) { m_style = style; } + void setBackgroundColor(const gRGB &col); + + /* untested code */ + int isVisible() { return (m_vis & wVisShow) && ((!m_parent) || m_parent->isVisible()); } + /* ... */ + private: eWidgetDesktop *m_desktop; @@ -54,6 +58,9 @@ private: void doPaint(gPainter &painter, const gRegion ®ion); void recalcClipRegionsWhenVisible(); + + gRGB m_background_color; + int m_have_background_color; protected: virtual ~eWidget(); public: @@ -73,6 +80,8 @@ public: evtWillChangePosition, /* new size is eRect *data */ evtWillChangeSize, + evtAction, + evtUserWidget, }; virtual int event(int event, void *data = 0, void *data2 = 0);