I am submitting this patch once again, because it needed updated to apply to the current CVS.

I first submitted this patch in March. I am starting to wonder if it is ever going to be committed to the CVS. If not, just please let me know, so I stop waisting everyones time sending it to the list.

Thanks,

John

Index: libs/libmythtv/tv_rec.cpp
===================================================================
RCS file: /var/lib/mythcvs/mythtv/libs/libmythtv/tv_rec.cpp,v
retrieving revision 1.191
diff -d -u -r1.191 tv_rec.cpp
--- libs/libmythtv/tv_rec.cpp	5 Jun 2005 22:38:07 -0000	1.191
+++ libs/libmythtv/tv_rec.cpp	6 Jun 2005 03:22:42 -0000
@@ -362,6 +362,18 @@
         recordEndTime = rcinfo->recendts;
         curRecording = new ProgramInfo(*rcinfo);
 
+        if (curRecording->category ==
+            gContext->GetSetting("OverTimeCategory"))
+        {
+            overrecordseconds = gContext->GetNumSetting("CategoryOverTime")
+                                * 60;
+            VERBOSE(VB_RECORD, QString("Show category \"%1\", "
+                                       "desired postroll %2")
+                    .arg(curRecording->category).arg(overrecordseconds));
+        }
+        else
+            overrecordseconds = gContext->GetNumSetting("RecordOverTime");
+        
         nextState = kState_RecordingOnly;
         changeState = true;
         retval = 1;
Index: programs/mythfrontend/globalsettings.cpp
===================================================================
RCS file: /var/lib/mythcvs/mythtv/programs/mythfrontend/globalsettings.cpp,v
retrieving revision 1.255
diff -d -u -r1.255 globalsettings.cpp
--- programs/mythfrontend/globalsettings.cpp	4 Jun 2005 02:46:30 -0000	1.255
+++ programs/mythfrontend/globalsettings.cpp	6 Jun 2005 03:22:43 -0000
@@ -597,6 +597,45 @@
     return bs;
 }
 
+static GlobalLineEdit *OverTimeCategory()
+{
+    GlobalLineEdit *ge = new GlobalLineEdit("OverTimeCategory");
+    ge->setLabel(QObject::tr("Category of shows to be extended"));
+    ge->setValue("Sports event");
+    ge->setHelpText(QObject::tr("For a special category (e.g. "
+                                "\"Sports event\"), request that shows "
+                                "be autoextended.  Only works if a "
+                                "shows category can be determined."));
+    return ge;
+}
+
+static GlobalSpinBox *CategoryOverTime()
+{
+    GlobalSpinBox *bs = new GlobalSpinBox("CategoryOverTime",
+                                          0, 180, 60, true);
+    bs->setLabel(QObject::tr("Record past end of show (in minutes)"));
+    bs->setValue(0);
+    bs->setHelpText(QObject::tr("For the specified category, an attempt "
+                                "will be made to extend the recording "
+                                "by the specified time.  It is ignored "
+                                "when two shows have been scheduled "
+                                "without enough time in between."));
+    return bs;
+}
+
+class CategoryOverTimeSettings: public VerticalConfigurationGroup {
+public:
+    CategoryOverTimeSettings():
+        VerticalConfigurationGroup(false, false) {
+        setLabel(QObject::tr("Category record over-time"));
+        setUseLabel(true);
+        Setting *overtimecategory = OverTimeCategory();
+        addChild(overtimecategory);
+        Setting *categoryovertime = CategoryOverTime();
+        addChild(categoryovertime);
+    }
+};
+
 static HostCheckBox *PlayBoxOrdering()
 {
     HostCheckBox *gc = new HostCheckBox("PlayBoxOrdering");
@@ -2988,6 +3027,7 @@
     general2->addChild(AutoExpireExtraSpace());
     general2->addChild(RecordPreRoll());
     general2->addChild(RecordOverTime());
+    general2->addChild(new CategoryOverTimeSettings());
     general2->addChild(ATSCCheckSignalThreshold());
     general2->addChild(ATSCCheckSignalWait());
     general2->addChild(HDRingbufferSize());
_______________________________________________
mythtv-dev mailing list
[email protected]
http://mythtv.org/cgi-bin/mailman/listinfo/mythtv-dev

Reply via email to