git.cweiske.de
/
enigma2.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
fix
[enigma2.git]
/
lib
/
gui
/
ewidget.h
diff --git
a/lib/gui/ewidget.h
b/lib/gui/ewidget.h
index 5cb139c505f354750f4c17dfb520409e877fb9af..f7c611f6c144918e142e603e0577b9f5e069237d 100644
(file)
--- a/
lib/gui/ewidget.h
+++ b/
lib/gui/ewidget.h
@@
-13,7
+13,8
@@
class eWidget
friend class eWidgetDesktop;
public:
eWidget(eWidget *parent);
friend class eWidgetDesktop;
public:
eWidget(eWidget *parent);
-
+ virtual ~eWidget();
+
void move(ePoint pos);
void resize(eSize size);
void move(ePoint pos);
void resize(eSize size);
@@
-39,9
+40,16
@@
public:
void setBackgroundColor(const gRGB &col);
void clearBackgroundColor();
void setBackgroundColor(const gRGB &col);
void clearBackgroundColor();
+ void setZPosition(int z);
+ void setTransparent(int transp);
+
/* untested code */
int isVisible() { return (m_vis & wVisShow) && ((!m_parent) || m_parent->isVisible()); }
/* ... */
/* untested code */
int isVisible() { return (m_vis & wVisShow) && ((!m_parent) || m_parent->isVisible()); }
/* ... */
+
+ int isTransparent() { return m_vis & wVisTransparent; }
+
+ ePoint getAbsolutePosition();
eWidgetAnimation m_animation;
private:
eWidgetAnimation m_animation;
private:
@@
-63,15
+71,20
@@
private:
ePtr<eWindowStyle> m_style;
ePtr<eWindowStyle> m_style;
+ void insertIntoParent();
void doPaint(gPainter &painter, const gRegion ®ion);
void recalcClipRegionsWhenVisible();
void doPaint(gPainter &painter, const gRegion ®ion);
void recalcClipRegionsWhenVisible();
+ void parentRemoved();
+
gRGB m_background_color;
int m_have_background_color;
eWidget *m_current_focus, *m_focus_owner;
gRGB m_background_color;
int m_have_background_color;
eWidget *m_current_focus, *m_focus_owner;
+
+ int m_z_position;
+ int m_notify_child_on_position_change;
protected:
protected:
- virtual ~eWidget();
void mayKillFocus();
public:
void mayKillFocus();
public:
@@
-86,6
+99,8
@@
public:
evtChangedPosition,
evtChangedSize,
evtChangedPosition,
evtChangedSize,
+ evtParentChangedPosition,
+
evtWillShow,
evtWillHide,
evtWillChangePosition, /* new size is eRect *data */
evtWillShow,
evtWillHide,
evtWillChangePosition, /* new size is eRect *data */
@@
-100,8
+115,11
@@
public:
};
virtual int event(int event, void *data = 0, void *data2 = 0);
void setFocus(eWidget *focus);
};
virtual int event(int event, void *data = 0, void *data2 = 0);
void setFocus(eWidget *focus);
+
+ /* enable this if you need the absolute position of the widget */
+ void setPositionNotifyChild(int n) { m_notify_child_on_position_change = 1; }
};
};
-extern eWidgetDesktop *getDesktop();
+extern eWidgetDesktop *getDesktop(
int which
);
#endif
#endif