diff options
author | louis <louis.braun@gmx.de> | 2015-05-14 10:09:34 +0200 |
---|---|---|
committer | louis <louis.braun@gmx.de> | 2015-05-14 10:09:34 +0200 |
commit | 01b09d742440727661d69bed76710b9d79e2c912 (patch) | |
tree | 56e6557d0a0ef58153bc39b8312ee98f2f205d30 /views | |
parent | e9ab094e966d53c7b4108cc52bfec60f08903701 (diff) | |
download | vdr-plugin-skindesigner-01b09d742440727661d69bed76710b9d79e2c912.tar.gz vdr-plugin-skindesigner-01b09d742440727661d69bed76710b9d79e2c912.tar.bz2 |
implemented shiftout for views
Diffstat (limited to 'views')
-rw-r--r-- | views/displaychannelview.c | 2 | ||||
-rw-r--r-- | views/displaymenutabview.c | 1 | ||||
-rw-r--r-- | views/displaymenuview.c | 2 | ||||
-rw-r--r-- | views/displaymessageview.c | 2 | ||||
-rw-r--r-- | views/displaypluginview.c | 2 | ||||
-rw-r--r-- | views/displayreplayview.c | 2 | ||||
-rw-r--r-- | views/displayvolumeview.c | 2 | ||||
-rw-r--r-- | views/view.c | 17 | ||||
-rw-r--r-- | views/view.h | 2 |
9 files changed, 18 insertions, 14 deletions
diff --git a/views/displaychannelview.c b/views/displaychannelview.c index 986ee39..28626f8 100644 --- a/views/displaychannelview.c +++ b/views/displaychannelview.c @@ -18,8 +18,6 @@ cDisplayChannelView::cDisplayChannelView(cTemplateView *tmplView) : cView(tmplVi } cDisplayChannelView::~cDisplayChannelView() { - CancelSave(); - FadeOut(); } bool cDisplayChannelView::createOsd(void) { diff --git a/views/displaymenutabview.c b/views/displaymenutabview.c index f9e03f9..ebf0097 100644 --- a/views/displaymenutabview.c +++ b/views/displaymenutabview.c @@ -5,7 +5,6 @@ cDisplayMenuTabView::cDisplayMenuTabView(cTemplateViewTab *tmplTab) : cView(tmpl } cDisplayMenuTabView::~cDisplayMenuTabView() { - CancelSave(); } void cDisplayMenuTabView::SetTokens(map < string, int > *intTokens, map < string, string > *stringTokens, map < string, vector< map< string, string > > > *loopTokens) { diff --git a/views/displaymenuview.c b/views/displaymenuview.c index 5a08844..a70535d 100644 --- a/views/displaymenuview.c +++ b/views/displaymenuview.c @@ -17,8 +17,6 @@ cDisplayMenuView::cDisplayMenuView(cTemplateView *tmplView, bool menuInit) : cVi } cDisplayMenuView::~cDisplayMenuView() { - CancelSave(); - FadeOut(); } bool cDisplayMenuView::DrawBackground(void) { diff --git a/views/displaymessageview.c b/views/displaymessageview.c index 25f41fb..85727cb 100644 --- a/views/displaymessageview.c +++ b/views/displaymessageview.c @@ -7,8 +7,6 @@ cDisplayMessageView::cDisplayMessageView(cTemplateView *tmplView) : cView(tmplVi } cDisplayMessageView::~cDisplayMessageView() { - CancelSave(); - FadeOut(); } bool cDisplayMessageView::createOsd(void) { diff --git a/views/displaypluginview.c b/views/displaypluginview.c index f057f69..67104af 100644 --- a/views/displaypluginview.c +++ b/views/displaypluginview.c @@ -17,8 +17,6 @@ cDisplayPluginView::cDisplayPluginView(cTemplateView *tmplView, bool isRootView) } cDisplayPluginView::~cDisplayPluginView() { - CancelSave(); - FadeOut(); if (tabView) delete tabView; } diff --git a/views/displayreplayview.c b/views/displayreplayview.c index 3436d5b..4208438 100644 --- a/views/displayreplayview.c +++ b/views/displayreplayview.c @@ -21,8 +21,6 @@ cDisplayReplayView::~cDisplayReplayView() { if (onPauseView) { delete onPauseView; } - CancelSave(); - FadeOut(); } bool cDisplayReplayView::createOsd(void) { diff --git a/views/displayvolumeview.c b/views/displayvolumeview.c index 94b073d..e7c8b1b 100644 --- a/views/displayvolumeview.c +++ b/views/displayvolumeview.c @@ -9,8 +9,6 @@ cDisplayVolumeView::cDisplayVolumeView(cTemplateView *tmplView) : cView(tmplView } cDisplayVolumeView::~cDisplayVolumeView() { - CancelSave(); - FadeOut(); } bool cDisplayVolumeView::createOsd(void) { diff --git a/views/view.c b/views/view.c index 185c8b9..1b9cc07 100644 --- a/views/view.c +++ b/views/view.c @@ -38,18 +38,29 @@ cView::cView(cTemplateViewTab *tmplTab) : cPixmapContainer(1) { }
cView::~cView() {
+ CancelSave();
+
if (tvScaled) {
cDevice::PrimaryDevice()->ScaleVideo(cRect::Null);
}
+ //clear detached views
for (map<eViewElement,cViewElement*>::iterator dVeIt = detachedViewElements.begin(); dVeIt != detachedViewElements.end(); dVeIt++) {
cViewElement *ve = dVeIt->second;
delete ve;
}
+ //clear animations
for (multimap<int, cAnimation*>::iterator animIt = animations.begin(); animIt != animations.end(); animIt++) {
cAnimation *anim = animIt->second;
anim->Stop();
delete anim;
}
+ //shift or fade out
+ if (fadeOut) {
+ if (IsAnimated())
+ ShiftOut();
+ else
+ FadeOut();
+ }
}
void cView::DrawDebugGrid(void) {
@@ -59,6 +70,7 @@ void cView::DrawDebugGrid(void) { }
void cView::Init(void) {
+ fadeOut = true;
viewInit = true;
scrolling = false;
veScroll = veUndefined;
@@ -1066,6 +1078,7 @@ cRect cView::CalculateAnimationClip(int numPix, cRect &pos) { cViewElement::cViewElement(cTemplateViewElement *tmplViewElement) : cView(tmplViewElement) {
init = true;
+ fadeOut = false;
ve = veUndefined;
helper = NULL;
SetTokens = NULL;
@@ -1080,6 +1093,7 @@ cViewElement::cViewElement(cTemplateViewElement *tmplViewElement) : cView(tmplVi cViewElement::cViewElement(cTemplateViewElement *tmplViewElement, cViewHelpers *helper) : cView(tmplViewElement) {
init = true;
+ fadeOut = false;
ve = veUndefined;
this->helper = helper;
SetTokens = NULL;
@@ -1093,7 +1107,6 @@ cViewElement::cViewElement(cTemplateViewElement *tmplViewElement, cViewHelpers * }
cViewElement::~cViewElement() {
- CancelSave();
}
bool cViewElement::Render(void) {
@@ -1148,6 +1161,7 @@ void cViewElement::ClearTokens(void) { ************************************************************************/
cViewListItem::cViewListItem(cTemplateViewElement *tmplItem) : cView(tmplItem) {
+ fadeOut = false;
pos = -1;
numTotal = 0;
align = alLeft;
@@ -1265,6 +1279,7 @@ void cViewListItem::SetListElementPosition(cTemplatePixmap *pix) { ************************************************************************/
cGrid::cGrid(cTemplateViewElement *tmplGrid) : cView(tmplGrid) {
+ fadeOut = false;
dirty = true;
moved = true;
resized = true;
diff --git a/views/view.h b/views/view.h index 91af9ec..f7d2ab5 100644 --- a/views/view.h +++ b/views/view.h @@ -42,6 +42,8 @@ protected: cRect scalingWindow;
bool tvScaled;
bool viewInit;
+ //do fadeout or shiftout only for views, not for childs
+ bool fadeOut;
//true if view is scrollable in general
bool scrolling;
//true if view is actually starting scrolling
|