diff -Nur vdr-1.4.3_old/cutter.c vdr-1.4.3/cutter.c --- vdr-1.4.3_old/cutter.c 2006-07-30 12:22:08.000000000 +0200 +++ vdr-1.4.3/cutter.c 2006-11-01 16:34:22.000000000 +0100 @@ -12,6 +12,7 @@ #include "remux.h" #include "thread.h" #include "videodir.h" +#include "status.h" // --- cCuttingThread -------------------------------------------------------- @@ -190,6 +191,7 @@ error = false; ended = false; cRecording Recording(FileName); + filename = FileName; const char *evn = Recording.PrefixFileName('%'); if (evn && RemoveVideoFile(evn) && MakeDirs(evn, true)) { // XXX this can be removed once RenameVideoFile() follows symlinks (see videodir.c) @@ -208,6 +210,7 @@ Recording.WriteInfo(); Recordings.AddByName(editedVersionName, false); cuttingThread = new cCuttingThread(FileName, editedVersionName); + cStatus::MsgCutterRunning(true, filename); return true; } } @@ -228,6 +231,7 @@ RemoveVideoFile(editedVersionName); //XXX what if this file is currently being replayed? Recordings.DelByName(editedVersionName); } + cStatus::MsgCutterRunning(false, filename); } bool cCutter::Active(void) diff -Nur vdr-1.4.3_old/cutter.h vdr-1.4.3/cutter.h --- vdr-1.4.3_old/cutter.h 2002-06-22 12:03:15.000000000 +0200 +++ vdr-1.4.3/cutter.h 2006-11-01 16:34:44.000000000 +0100 @@ -18,6 +18,7 @@ static cCuttingThread *cuttingThread; static bool error; static bool ended; + static const char* filename; public: static bool Start(const char *FileName); static void Stop(void); diff -Nur vdr-1.4.3_old/status.c vdr-1.4.3/status.c --- vdr-1.4.3_old/status.c 2005-12-31 16:10:10.000000000 +0100 +++ vdr-1.4.3/status.c 2006-11-01 16:35:32.000000000 +0100 @@ -112,3 +112,9 @@ for (cStatus *sm = statusMonitors.First(); sm; sm = statusMonitors.Next(sm)) sm->OsdProgramme(PresentTime, PresentTitle, PresentSubtitle, FollowingTime, FollowingTitle, FollowingSubtitle); } + +void cStatus::MsgCutterRunning(bool Running, const char *FileName) +{ + for (cStatus *sm = statusMonitors.First(); sm; sm = statusMonitors.Next(sm)) + sm->CutterRunning(Running, FileName); +} diff -Nur vdr-1.4.3_old/status.h vdr-1.4.3/status.h --- vdr-1.4.3_old/status.h 2005-12-31 16:15:25.000000000 +0100 +++ vdr-1.4.3/status.h 2006-11-01 16:31:26.000000000 +0100 @@ -67,6 +67,8 @@ // The OSD displays the single line Text with the current channel information. virtual void OsdProgramme(time_t PresentTime, const char *PresentTitle, const char *PresentSubtitle, time_t FollowingTime, const char *FollowingTitle, const char *FollowingSubtitle) {} // The OSD displays the given programme information. + virtual void CutterRunning(bool Running, const char *FileName) {} + // Inform if cutting process is running and what file it is processing. public: cStatus(void); virtual ~cStatus(); @@ -86,6 +88,7 @@ static void MsgOsdTextItem(const char *Text, bool Scroll = false); static void MsgOsdChannel(const char *Text); static void MsgOsdProgramme(time_t PresentTime, const char *PresentTitle, const char *PresentSubtitle, time_t FollowingTime, const char *FollowingTitle, const char *FollowingSubtitle); + static void MsgCutterRunning(bool Running, const char *FileName); }; #endif //__STATUS_H