summaryrefslogtreecommitdiff
path: root/menu.c
diff options
context:
space:
mode:
authorKlaus Schmidinger <vdr@tvdr.de>2002-05-19 15:50:11 +0200
committerKlaus Schmidinger <vdr@tvdr.de>2002-05-19 15:50:11 +0200
commit9f9d6a8a9354960eb9c42f9c45ed507f05804ff4 (patch)
tree6e7de2a8ce6d3cedc78038e4d70ef2ff56f24528 /menu.c
parent82725f53b5c23d3436f3b71845a1b61447b9780f (diff)
downloadvdr-9f9d6a8a9354960eb9c42f9c45ed507f05804ff4.tar.gz
vdr-9f9d6a8a9354960eb9c42f9c45ed507f05804ff4.tar.bz2
Implemented cStatusMonitor to allow plugins to set up a status monitor
Diffstat (limited to 'menu.c')
-rw-r--r--menu.c13
1 files changed, 11 insertions, 2 deletions
diff --git a/menu.c b/menu.c
index f294e59c..40119efa 100644
--- a/menu.c
+++ b/menu.c
@@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
- * $Id: menu.c 1.194 2002/05/18 13:08:42 kls Exp $
+ * $Id: menu.c 1.195 2002/05/19 14:55:22 kls Exp $
*/
#include "menu.h"
@@ -18,6 +18,7 @@
#include "i18n.h"
#include "menuitems.h"
#include "plugin.h"
+#include "status.h"
#include "videodir.h"
#define MENUTIMEOUT 120 // seconds
@@ -2162,6 +2163,7 @@ void cDisplayChannel::DisplayChannel(const cChannel *Channel)
Interface->Write(0, 0, buffer);
const char *date = DayDateTime();
Interface->Write(-strlen(date), 0, date);
+ cStatusMonitor::MsgOsdChannel(buffer);
}
void cDisplayChannel::DisplayInfo(void)
@@ -2215,6 +2217,7 @@ void cDisplayChannel::DisplayInfo(void)
Interface->Flush();
lines = Lines;
lastTime = time_ms();
+ cStatusMonitor::MsgOsdProgramme(Present ? Present->GetTime() : 0, PresentTitle, PresentSubtitle, Following ? Following->GetTime() : 0, FollowingTitle, FollowingSubtitle);
}
}
}
@@ -2431,8 +2434,10 @@ cRecordControl::cRecordControl(cDvbApi *DvbApi, cTimer *Timer)
cRecording Recording(timer, Title, Subtitle, Summary);
fileName = strdup(Recording.FileName());
cRecordingUserCommand::InvokeCommand(RUC_BEFORERECORDING, fileName);
- if (dvbApi->StartRecord(fileName, Channels.GetByNumber(timer->channel)->ca, timer->priority))
+ if (dvbApi->StartRecord(fileName, Channels.GetByNumber(timer->channel)->ca, timer->priority)) {
Recording.WriteSummary();
+ cStatusMonitor::MsgRecording(dvbApi, fileName);
+ }
Interface->DisplayRecording(dvbApi->CardIndex(), true);
}
else
@@ -2479,6 +2484,7 @@ bool cRecordControl::GetEventInfo(void)
void cRecordControl::Stop(bool KeepInstant)
{
if (timer) {
+ cStatusMonitor::MsgRecording(dvbApi, NULL);
dvbApi->StopRecord();
timer->SetRecording(false);
if ((IsInstant() && !KeepInstant) || (timer->IsSingleEvent() && !timer->Matches())) {
@@ -2667,12 +2673,15 @@ cReplayControl::cReplayControl(void)
marks.Load(fileName);
if (!dvbApi->StartReplay(fileName))
Interface->Error(tr("Channel locked (recording)!"));
+ else
+ cStatusMonitor::MsgReplaying(dvbApi, fileName);
}
}
cReplayControl::~cReplayControl()
{
Hide();
+ cStatusMonitor::MsgReplaying(dvbApi, NULL);
dvbApi->StopReplay();
}