git.cweiske.de
/
enigma2.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
- invalidate background on startup
[enigma2.git]
/
lib
/
gui
/
ewidget.h
diff --git
a/lib/gui/ewidget.h
b/lib/gui/ewidget.h
index 12d2e743942143604eaf1a31192273ba81cb1c88..345977f225da2026fe40f7168c7dd75d577aeb0b 100644
(file)
--- a/
lib/gui/ewidget.h
+++ b/
lib/gui/ewidget.h
@@
-5,8
+5,6
@@
#include <lib/base/eptrlist.h> /* for eSmartPtrList */
#include <lib/gui/ewindowstyle.h> /* for eWindowStyle */
#include <lib/base/eptrlist.h> /* for eSmartPtrList */
#include <lib/gui/ewindowstyle.h> /* for eWindowStyle */
-class eWindowStyle;
-
class eWidget
{
friend class eWidgetDesktop;
class eWidget
{
friend class eWidgetDesktop;
@@
-35,6
+33,13
@@
public:
int getStyle(ePtr<eWindowStyle> &style) { if (!m_style) return 1; style = m_style; return 0; }
void setStyle(eWindowStyle *style) { m_style = style; }
int getStyle(ePtr<eWindowStyle> &style) { if (!m_style) return 1; style = m_style; return 0; }
void setStyle(eWindowStyle *style) { m_style = style; }
+ void setBackgroundColor(const gRGB &col);
+ void clearBackgroundColor();
+
+ /* untested code */
+ int isVisible() { return (m_vis & wVisShow) && ((!m_parent) || m_parent->isVisible()); }
+ /* ... */
+
private:
eWidgetDesktop *m_desktop;
private:
eWidgetDesktop *m_desktop;
@@
-54,8
+59,14
@@
private:
void doPaint(gPainter &painter, const gRegion ®ion);
void recalcClipRegionsWhenVisible();
void doPaint(gPainter &painter, const gRegion ®ion);
void recalcClipRegionsWhenVisible();
+
+ gRGB m_background_color;
+ int m_have_background_color;
+
+ eWidget *m_current_focus, *m_focus_owner;
protected:
virtual ~eWidget();
protected:
virtual ~eWidget();
+ void mayKillFocus();
public:
// all in local space!
public:
// all in local space!
@@
-75,9
+86,13
@@
public:
evtAction,
evtAction,
+ evtFocusGot,
+ evtFocusLost,
+
evtUserWidget,
};
virtual int event(int event, void *data = 0, void *data2 = 0);
evtUserWidget,
};
virtual int event(int event, void *data = 0, void *data2 = 0);
+ void setFocus(eWidget *focus);
};
extern eWidgetDesktop *getDesktop();
};
extern eWidgetDesktop *getDesktop();