git.cweiske.de
/
enigma2.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
don't use internals of other classes
[enigma2.git]
/
lib
/
gui
/
ewidget.h
diff --git
a/lib/gui/ewidget.h
b/lib/gui/ewidget.h
index 97eb143445ef56acbf1f37d693ac5e76253cc8e0..5cb139c505f354750f4c17dfb520409e877fb9af 100644
(file)
--- a/
lib/gui/ewidget.h
+++ b/
lib/gui/ewidget.h
@@
-4,6
+4,9
@@
#include <lib/gdi/grc.h> /* for gRegion */
#include <lib/base/eptrlist.h> /* for eSmartPtrList */
#include <lib/gui/ewindowstyle.h> /* for eWindowStyle */
#include <lib/gdi/grc.h> /* for gRegion */
#include <lib/base/eptrlist.h> /* for eSmartPtrList */
#include <lib/gui/ewindowstyle.h> /* for eWindowStyle */
+#include <lib/gui/ewidgetanimation.h>
+
+class eWidgetDesktop;class eWidgetDesktop;
class eWidget
{
class eWidget
{
@@
-33,6
+36,14
@@
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()); }
+ /* ... */
+
+ eWidgetAnimation m_animation;
private:
eWidgetDesktop *m_desktop;
private:
eWidgetDesktop *m_desktop;
@@
-46,18
+57,27
@@
private:
ePtrList<eWidget> m_childs;
ePoint m_position;
eSize m_size;
ePtrList<eWidget> m_childs;
ePoint m_position;
eSize m_size;
+ /* will be accounted when there's a client offset */
+ eSize m_client_offset;
eWidget *m_parent;
ePtr<eWindowStyle> m_style;
void doPaint(gPainter &painter, const gRegion ®ion);
void recalcClipRegionsWhenVisible();
eWidget *m_parent;
ePtr<eWindowStyle> m_style;
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!
gRegion m_clip_region, m_visible_region, m_visible_with_childs;
public:
// all in local space!
gRegion m_clip_region, m_visible_region, m_visible_with_childs;
+ struct eWidgetDesktopCompBuffer *m_comp_buffer;
enum eWidgetEvent
{
enum eWidgetEvent
{
@@
-73,9
+93,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();