summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--displaymenu.c9
-rw-r--r--menudetailview.c9
-rw-r--r--menudetailview.h5
-rw-r--r--menuitem.c6
4 files changed, 10 insertions, 19 deletions
diff --git a/displaymenu.c b/displaymenu.c
index 00156c5..fe362bf 100644
--- a/displaymenu.c
+++ b/displaymenu.c
@@ -587,7 +587,7 @@ void cNopacityDisplayMenu::SetEvent(const cEvent *Event) {
menuView->AdjustContentBackground(this->MenuCategory(), menuCategoryLast, videoWindowRect);
detailView = new cNopacityDetailView(dvEvent, osd, menuView->GetPixmapScrollbar(), menuView->GetPixmapScrollbarBack());
detailView->SetEvent(Event);
- detailView->Start();
+ detailView->Render();
}
void cNopacityDisplayMenu::SetRecording(const cRecording *Recording) {
@@ -600,7 +600,7 @@ void cNopacityDisplayMenu::SetRecording(const cRecording *Recording) {
menuView->AdjustContentBackground(this->MenuCategory(), menuCategoryLast, videoWindowRect);
detailView = new cNopacityDetailView(dvRecording, osd, menuView->GetPixmapScrollbar(), menuView->GetPixmapScrollbarBack());
detailView->SetRecording(Recording);
- detailView->Start();
+ detailView->Render();
}
void cNopacityDisplayMenu::SetText(const char *Text, bool FixedFont) {
@@ -609,7 +609,7 @@ void cNopacityDisplayMenu::SetText(const char *Text, bool FixedFont) {
menuView->AdjustContentBackground(this->MenuCategory(), menuCategoryLast, videoWindowRect);
detailView = new cNopacityDetailView(dvText, osd, menuView->GetPixmapScrollbar(), menuView->GetPixmapScrollbarBack());
detailView->SetText(Text);
- detailView->Start();
+ detailView->Render();
}
void cNopacityDisplayMenu::SetAlpha(int Alpha, bool Force) {
@@ -642,9 +642,6 @@ void cNopacityDisplayMenu::Flush(void) {
if (config.GetValue("showTimers"))
DrawTimers(timersChanged, numConflicts);
}
- if (detailView)
- while (detailView->IsRunning())
- cCondWait::SleepMs(10);
if (initial) {
if ((MenuCategory() != mcPluginSetup) && (MenuCategory() != mcSetupPlugins) && menuFadeTime) {
SetAlpha(0, true);
diff --git a/menudetailview.c b/menudetailview.c
index b68f8c4..907a6fe 100644
--- a/menudetailview.c
+++ b/menudetailview.c
@@ -3,7 +3,7 @@
/********************************************************************************************
* cNopacityDetailView
********************************************************************************************/
-cNopacityDetailView::cNopacityDetailView(eDetailViewType detailViewType, cOsd *osd, cPixmap *s, cPixmap *sBack) : cThread("DetailView") {
+cNopacityDetailView::cNopacityDetailView(eDetailViewType detailViewType, cOsd *osd, cPixmap *s, cPixmap *sBack) {
type = detailViewType;
this->osd = osd;
this->scrollBar = s;
@@ -36,9 +36,6 @@ cNopacityDetailView::cNopacityDetailView(eDetailViewType detailViewType, cOsd *o
}
cNopacityDetailView::~cNopacityDetailView(void) {
- Cancel(-1);
- while (Active())
- cCondWait::SleepMs(10);
if (view)
delete view;
}
@@ -121,8 +118,6 @@ void cNopacityDetailView::InitiateViewType(void) {
}
}
void cNopacityDetailView::KeyInput(bool Up, bool Page) {
- if (Running())
- return;
if (!view)
return;
if (Up && Page) {
@@ -382,7 +377,7 @@ int cNopacityDetailView::ReadSizeVdr(const char *strPath) {
return dirSize;
}
-void cNopacityDetailView::Action(void) {
+void cNopacityDetailView::Render(void) {
InitiateViewType();
if (!view)
return;
diff --git a/menudetailview.h b/menudetailview.h
index 5fac963..d0894c5 100644
--- a/menudetailview.h
+++ b/menudetailview.h
@@ -19,7 +19,7 @@ enum eDetailViewType {
dvText
};
-class cNopacityDetailView : public cThread {
+class cNopacityDetailView {
protected:
eDetailViewType type;
cOsd *osd;
@@ -36,7 +36,6 @@ protected:
std::string LoadRecordingInformation(void);
std::string StripXmlTag(std::string &Line, const char *Tag);
int ReadSizeVdr(const char *strPath);
- virtual void Action(void);
public:
cNopacityDetailView(eDetailViewType detailViewType, cOsd *osd, cPixmap *s, cPixmap *sBack);
virtual ~cNopacityDetailView(void);
@@ -45,7 +44,7 @@ public:
void SetRecording(const cRecording *r) { rec = r; };
void SetText(const char *t) { text = t; };
void KeyInput(bool Up, bool Page);
- bool IsRunning(void) { return Running(); };
+ void Render(void);
};
#endif //__NOPACITY_MENUDETAILVIEW_H
diff --git a/menuitem.c b/menuitem.c
index 59a582c..79a8c36 100644
--- a/menuitem.c
+++ b/menuitem.c
@@ -28,6 +28,9 @@ cNopacityMenuItem::cNopacityMenuItem(cOsd *osd, const char *text, bool sel) : cT
cNopacityMenuItem::~cNopacityMenuItem(void) {
Cancel(-1);
+ if (infoTextWindow) {
+ delete infoTextWindow;
+ }
while (Active())
cCondWait::SleepMs(10);
delete [] itemTabs;
@@ -42,9 +45,6 @@ cNopacityMenuItem::~cNopacityMenuItem(void) {
if (pixmapForeground) {
osd->DestroyPixmap(pixmapForeground);
}
- if (infoTextWindow) {
- delete infoTextWindow;
- }
}
void cNopacityMenuItem::SetCurrent(bool cur) {