Index: TvEngine3/TVLibrary/SetupTv/Sections/Epg.cs =================================================================== --- TvEngine3/TVLibrary/SetupTv/Sections/Epg.cs (Revision 28136) +++ TvEngine3/TVLibrary/SetupTv/Sections/Epg.cs (Arbeitskopie) @@ -31,7 +31,7 @@ private string crcSettingsFile = DebugSettings.SettingPath("DisableCRCCheck"); public Epg() - : this("DVB EPG") {} + : this("DVB EPG") { } public Epg(string name) : base(name) @@ -48,6 +48,18 @@ checkBoxAlwaysUpdate.Checked = (layer.GetSetting("generalEPGAlwaysReplace", "no").Value == "yes"); checkboxSameTransponder.Checked = (layer.GetSetting("generalGrapOnlyForSameTransponder", "no").Value == "yes"); + checkBoxUseEPGTimeSlot.Checked = (layer.GetSetting("useEPGGrabbingTimeSlot", "no").Value == "yes"); + dateTimePickerEPGSlotEnd.Enabled = checkBoxUseEPGTimeSlot.Checked; + dateTimePickerEPGSlotStart.Enabled = checkBoxUseEPGTimeSlot.Checked; + String slotStartString = layer.GetSetting("epgTimeSlotStart", "00:00:00").Value; + String[] slotStartValues = slotStartString.Split(':'); + DateTime slotStart = new DateTime(2000, 1, 1, Convert.ToInt32(slotStartValues[0]), Convert.ToInt32(slotStartValues[1]), Convert.ToInt32(slotStartValues[2])); + dateTimePickerEPGSlotStart.Value = slotStart; + String slotEndString = layer.GetSetting("epgTimeSlotEnd", "23:59:00").Value; + String[] slotEndValues = slotEndString.Split(':'); + DateTime slotEnd = new DateTime(2000, 1, 1, Convert.ToInt32(slotEndValues[0]), Convert.ToInt32(slotEndValues[1]), Convert.ToInt32(slotEndValues[2])); + dateTimePickerEPGSlotEnd.Value = slotEnd; + checkBoxEnableEPGWhileIdle.Checked = (layer.GetSetting("idleEPGGrabberEnabled", "yes").Value == "yes"); checkBoxEnableCRCCheck.Checked = !DebugSettings.DisableCRCCheck; numericUpDownEpgTimeOut.Value = Convert.ToDecimal(layer.GetSetting("timeoutEPG", "10").Value); @@ -77,6 +89,18 @@ s.Value = checkboxSameTransponder.Checked ? "yes" : "no"; s.Persist(); + s = layer.GetSetting("useEPGGrabbingTimeSlot", "no"); + s.Value = checkBoxUseEPGTimeSlot.Checked ? "yes" : "no"; + s.Persist(); + + s = layer.GetSetting("epgTimeSlotStart", "00:00:00"); + s.Value = dateTimePickerEPGSlotStart.Value.Hour.ToString() + ":" + dateTimePickerEPGSlotStart.Value.Minute.ToString() + ":" + dateTimePickerEPGSlotStart.Value.Second.ToString() + ":"; + s.Persist(); + + s = layer.GetSetting("epgTimeSlotEnd", "23:59:00"); + s.Value = dateTimePickerEPGSlotEnd.Value.Hour.ToString() + ":" + dateTimePickerEPGSlotEnd.Value.Minute.ToString() + ":" + dateTimePickerEPGSlotEnd.Value.Second.ToString() + ":"; + s.Persist(); + DebugSettings.DisableCRCCheck = !checkBoxEnableCRCCheck.Checked; s = layer.GetSetting("idleEPGGrabberEnabled", "yes"); @@ -130,5 +154,11 @@ edTitleTest.Text = EvalTemplate(edTitleTemplate.Text, defaults); edDescriptionTest.Text = EvalTemplate(edDescriptionTemplate.Text, defaults); } + + private void checkBoxUseEPGTimeSlot_CheckedChanged(object sender, EventArgs e) + { + dateTimePickerEPGSlotEnd.Enabled = checkBoxUseEPGTimeSlot.Checked; + dateTimePickerEPGSlotStart.Enabled = checkBoxUseEPGTimeSlot.Checked; + } } } \ No newline at end of file Index: TvEngine3/TVLibrary/SetupTv/Sections/Epg.Designer.cs =================================================================== --- TvEngine3/TVLibrary/SetupTv/Sections/Epg.Designer.cs (Revision 28136) +++ TvEngine3/TVLibrary/SetupTv/Sections/Epg.Designer.cs (Arbeitskopie) @@ -28,462 +28,542 @@ /// private void InitializeComponent() { - this.groupBox9 = new System.Windows.Forms.GroupBox(); - this.label31 = new System.Windows.Forms.Label(); - this.edTitleTemplate = new System.Windows.Forms.TextBox(); - this.label27 = new System.Windows.Forms.Label(); - this.label28 = new System.Windows.Forms.Label(); - this.label38 = new System.Windows.Forms.Label(); - this.edDescriptionTemplate = new System.Windows.Forms.TextBox(); - this.label30 = new System.Windows.Forms.Label(); - this.edTitleTest = new System.Windows.Forms.TextBox(); - this.label29 = new System.Windows.Forms.Label(); - this.edDescriptionTest = new System.Windows.Forms.TextBox(); - this.btnTest = new System.Windows.Forms.Button(); - this.groupBox2 = new System.Windows.Forms.GroupBox(); - this.numericUpDownEpgRefresh = new System.Windows.Forms.NumericUpDown(); - this.numericUpDownEpgTimeOut = new System.Windows.Forms.NumericUpDown(); - this.checkBoxEnableEPGWhileIdle = new MediaPortal.UserInterface.Controls.MPCheckBox(); - this.label15 = new System.Windows.Forms.Label(); - this.label14 = new System.Windows.Forms.Label(); - this.label8 = new System.Windows.Forms.Label(); - this.label7 = new System.Windows.Forms.Label(); - this.groupBox5 = new System.Windows.Forms.GroupBox(); - this.numericUpDownTSEpgTimeout = new System.Windows.Forms.NumericUpDown(); - this.checkBoxEnableEpgWhileTimeshifting = new MediaPortal.UserInterface.Controls.MPCheckBox(); - this.label22 = new System.Windows.Forms.Label(); - this.label23 = new System.Windows.Forms.Label(); - this.groupBox7 = new System.Windows.Forms.GroupBox(); - this.checkboxSameTransponder = new MediaPortal.UserInterface.Controls.MPCheckBox(); - this.label1 = new System.Windows.Forms.Label(); - this.checkBoxEnableCRCCheck = new MediaPortal.UserInterface.Controls.MPCheckBox(); - this.checkBoxAlwaysUpdate = new MediaPortal.UserInterface.Controls.MPCheckBox(); - this.checkBoxAlwaysFillHoles = new MediaPortal.UserInterface.Controls.MPCheckBox(); - this.tabPage1 = new System.Windows.Forms.TabPage(); - this.tabControlEpg = new System.Windows.Forms.TabControl(); - this.groupBox9.SuspendLayout(); - this.groupBox2.SuspendLayout(); - ((System.ComponentModel.ISupportInitialize)(this.numericUpDownEpgRefresh)).BeginInit(); - ((System.ComponentModel.ISupportInitialize)(this.numericUpDownEpgTimeOut)).BeginInit(); - this.groupBox5.SuspendLayout(); - ((System.ComponentModel.ISupportInitialize)(this.numericUpDownTSEpgTimeout)).BeginInit(); - this.groupBox7.SuspendLayout(); - this.tabPage1.SuspendLayout(); - this.tabControlEpg.SuspendLayout(); - this.SuspendLayout(); - // - // groupBox9 - // - this.groupBox9.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) - | System.Windows.Forms.AnchorStyles.Right))); - this.groupBox9.Controls.Add(this.label31); - this.groupBox9.Controls.Add(this.edTitleTemplate); - this.groupBox9.Controls.Add(this.label27); - this.groupBox9.Controls.Add(this.label28); - this.groupBox9.Controls.Add(this.label38); - this.groupBox9.Controls.Add(this.edDescriptionTemplate); - this.groupBox9.Controls.Add(this.label30); - this.groupBox9.Controls.Add(this.edTitleTest); - this.groupBox9.Controls.Add(this.label29); - this.groupBox9.Controls.Add(this.edDescriptionTest); - this.groupBox9.Controls.Add(this.btnTest); - this.groupBox9.Location = new System.Drawing.Point(3, 200); - this.groupBox9.Name = "groupBox9"; - this.groupBox9.Size = new System.Drawing.Size(457, 192); - this.groupBox9.TabIndex = 41; - this.groupBox9.TabStop = false; - this.groupBox9.Text = "Display options"; - // - // label31 - // - this.label31.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) - | System.Windows.Forms.AnchorStyles.Right))); - this.label31.Location = new System.Drawing.Point(326, 80); - this.label31.Name = "label31"; - this.label31.Size = new System.Drawing.Size(125, 106); - this.label31.TabIndex = 37; - this.label31.Text = "%TITLE%\r\n%DESCRIPTION%\r\n%GENRE%\r\n%STARRATING%\r\n%STARRATING_STR%\r\n%CLASSIFICATION%" + - "\r\n%PARENTALRATING%\r\n%NEWLINE%"; - // - // edTitleTemplate - // - this.edTitleTemplate.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) - | System.Windows.Forms.AnchorStyles.Right))); - this.edTitleTemplate.Location = new System.Drawing.Point(75, 19); - this.edTitleTemplate.Name = "edTitleTemplate"; - this.edTitleTemplate.Size = new System.Drawing.Size(245, 20); - this.edTitleTemplate.TabIndex = 20; - // - // label27 - // - this.label27.AutoSize = true; - this.label27.Location = new System.Drawing.Point(6, 22); - this.label27.Name = "label27"; - this.label27.Size = new System.Drawing.Size(30, 13); - this.label27.TabIndex = 19; - this.label27.Text = "Title:"; - // - // label28 - // - this.label28.AutoSize = true; - this.label28.Location = new System.Drawing.Point(6, 48); - this.label28.Name = "label28"; - this.label28.Size = new System.Drawing.Size(63, 13); - this.label28.TabIndex = 21; - this.label28.Text = "Description:"; - // - // label38 - // - this.label38.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.label38.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, ((System.Drawing.FontStyle)((System.Drawing.FontStyle.Bold | System.Drawing.FontStyle.Italic))), System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.label38.Location = new System.Drawing.Point(326, 16); - this.label38.Name = "label38"; - this.label38.Size = new System.Drawing.Size(125, 61); - this.label38.TabIndex = 35; - this.label38.Text = "You can use any combination of the placeholders shown below"; - // - // edDescriptionTemplate - // - this.edDescriptionTemplate.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) - | System.Windows.Forms.AnchorStyles.Right))); - this.edDescriptionTemplate.Location = new System.Drawing.Point(75, 45); - this.edDescriptionTemplate.Name = "edDescriptionTemplate"; - this.edDescriptionTemplate.Size = new System.Drawing.Size(245, 20); - this.edDescriptionTemplate.TabIndex = 22; - // - // label30 - // - this.label30.AutoSize = true; - this.label30.Location = new System.Drawing.Point(6, 103); - this.label30.Name = "label30"; - this.label30.Size = new System.Drawing.Size(30, 13); - this.label30.TabIndex = 23; - this.label30.Text = "Title:"; - // - // edTitleTest - // - this.edTitleTest.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) - | System.Windows.Forms.AnchorStyles.Right))); - this.edTitleTest.Location = new System.Drawing.Point(75, 100); - this.edTitleTest.Name = "edTitleTest"; - this.edTitleTest.ReadOnly = true; - this.edTitleTest.Size = new System.Drawing.Size(245, 20); - this.edTitleTest.TabIndex = 24; - // - // label29 - // - this.label29.AutoSize = true; - this.label29.Location = new System.Drawing.Point(6, 129); - this.label29.Name = "label29"; - this.label29.Size = new System.Drawing.Size(63, 13); - this.label29.TabIndex = 25; - this.label29.Text = "Description:"; - // - // edDescriptionTest - // - this.edDescriptionTest.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) - | System.Windows.Forms.AnchorStyles.Left) - | System.Windows.Forms.AnchorStyles.Right))); - this.edDescriptionTest.Location = new System.Drawing.Point(75, 126); - this.edDescriptionTest.Multiline = true; - this.edDescriptionTest.Name = "edDescriptionTest"; - this.edDescriptionTest.ReadOnly = true; - this.edDescriptionTest.Size = new System.Drawing.Size(245, 58); - this.edDescriptionTest.TabIndex = 26; - // - // btnTest - // - this.btnTest.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.btnTest.Location = new System.Drawing.Point(245, 71); - this.btnTest.Name = "btnTest"; - this.btnTest.Size = new System.Drawing.Size(75, 23); - this.btnTest.TabIndex = 27; - this.btnTest.Text = "Test"; - this.btnTest.UseVisualStyleBackColor = true; - this.btnTest.Click += new System.EventHandler(this.btnTest_Click); - // - // groupBox2 - // - this.groupBox2.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) - | System.Windows.Forms.AnchorStyles.Right))); - this.groupBox2.Controls.Add(this.numericUpDownEpgRefresh); - this.groupBox2.Controls.Add(this.numericUpDownEpgTimeOut); - this.groupBox2.Controls.Add(this.checkBoxEnableEPGWhileIdle); - this.groupBox2.Controls.Add(this.label15); - this.groupBox2.Controls.Add(this.label14); - this.groupBox2.Controls.Add(this.label8); - this.groupBox2.Controls.Add(this.label7); - this.groupBox2.Location = new System.Drawing.Point(235, 96); - this.groupBox2.Name = "groupBox2"; - this.groupBox2.Size = new System.Drawing.Size(225, 98); - this.groupBox2.TabIndex = 40; - this.groupBox2.TabStop = false; - this.groupBox2.Text = "EPG grabbing while idle"; - // - // numericUpDownEpgRefresh - // - this.numericUpDownEpgRefresh.Location = new System.Drawing.Point(86, 68); - this.numericUpDownEpgRefresh.Maximum = new decimal(new int[] { + this.groupBox9 = new System.Windows.Forms.GroupBox(); + this.label31 = new System.Windows.Forms.Label(); + this.edTitleTemplate = new System.Windows.Forms.TextBox(); + this.label27 = new System.Windows.Forms.Label(); + this.label28 = new System.Windows.Forms.Label(); + this.label38 = new System.Windows.Forms.Label(); + this.edDescriptionTemplate = new System.Windows.Forms.TextBox(); + this.label30 = new System.Windows.Forms.Label(); + this.edTitleTest = new System.Windows.Forms.TextBox(); + this.label29 = new System.Windows.Forms.Label(); + this.edDescriptionTest = new System.Windows.Forms.TextBox(); + this.btnTest = new System.Windows.Forms.Button(); + this.groupBox2 = new System.Windows.Forms.GroupBox(); + this.numericUpDownEpgRefresh = new System.Windows.Forms.NumericUpDown(); + this.numericUpDownEpgTimeOut = new System.Windows.Forms.NumericUpDown(); + this.checkBoxEnableEPGWhileIdle = new MediaPortal.UserInterface.Controls.MPCheckBox(); + this.label15 = new System.Windows.Forms.Label(); + this.label14 = new System.Windows.Forms.Label(); + this.label8 = new System.Windows.Forms.Label(); + this.label7 = new System.Windows.Forms.Label(); + this.groupBox5 = new System.Windows.Forms.GroupBox(); + this.numericUpDownTSEpgTimeout = new System.Windows.Forms.NumericUpDown(); + this.checkBoxEnableEpgWhileTimeshifting = new MediaPortal.UserInterface.Controls.MPCheckBox(); + this.label22 = new System.Windows.Forms.Label(); + this.label23 = new System.Windows.Forms.Label(); + this.groupBox7 = new System.Windows.Forms.GroupBox(); + this.checkboxSameTransponder = new MediaPortal.UserInterface.Controls.MPCheckBox(); + this.label1 = new System.Windows.Forms.Label(); + this.checkBoxEnableCRCCheck = new MediaPortal.UserInterface.Controls.MPCheckBox(); + this.checkBoxAlwaysUpdate = new MediaPortal.UserInterface.Controls.MPCheckBox(); + this.checkBoxAlwaysFillHoles = new MediaPortal.UserInterface.Controls.MPCheckBox(); + this.tabPage1 = new System.Windows.Forms.TabPage(); + this.tabControlEpg = new System.Windows.Forms.TabControl(); + this.checkBoxUseEPGTimeSlot = new MediaPortal.UserInterface.Controls.MPCheckBox(); + this.dateTimePickerEPGSlotStart = new System.Windows.Forms.DateTimePicker(); + this.label2 = new System.Windows.Forms.Label(); + this.label3 = new System.Windows.Forms.Label(); + this.dateTimePickerEPGSlotEnd = new System.Windows.Forms.DateTimePicker(); + this.label4 = new System.Windows.Forms.Label(); + this.label5 = new System.Windows.Forms.Label(); + this.groupBox9.SuspendLayout(); + this.groupBox2.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.numericUpDownEpgRefresh)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.numericUpDownEpgTimeOut)).BeginInit(); + this.groupBox5.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.numericUpDownTSEpgTimeout)).BeginInit(); + this.groupBox7.SuspendLayout(); + this.tabPage1.SuspendLayout(); + this.tabControlEpg.SuspendLayout(); + this.SuspendLayout(); + // + // groupBox9 + // + this.groupBox9.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupBox9.Controls.Add(this.label31); + this.groupBox9.Controls.Add(this.edTitleTemplate); + this.groupBox9.Controls.Add(this.label27); + this.groupBox9.Controls.Add(this.label28); + this.groupBox9.Controls.Add(this.label38); + this.groupBox9.Controls.Add(this.edDescriptionTemplate); + this.groupBox9.Controls.Add(this.label30); + this.groupBox9.Controls.Add(this.edTitleTest); + this.groupBox9.Controls.Add(this.label29); + this.groupBox9.Controls.Add(this.edDescriptionTest); + this.groupBox9.Controls.Add(this.btnTest); + this.groupBox9.Location = new System.Drawing.Point(3, 281); + this.groupBox9.Name = "groupBox9"; + this.groupBox9.Size = new System.Drawing.Size(457, 192); + this.groupBox9.TabIndex = 41; + this.groupBox9.TabStop = false; + this.groupBox9.Text = "Display options"; + // + // label31 + // + this.label31.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) + | System.Windows.Forms.AnchorStyles.Right))); + this.label31.Location = new System.Drawing.Point(326, 80); + this.label31.Name = "label31"; + this.label31.Size = new System.Drawing.Size(125, 106); + this.label31.TabIndex = 37; + this.label31.Text = "%TITLE%\r\n%DESCRIPTION%\r\n%GENRE%\r\n%STARRATING%\r\n%STARRATING_STR%\r\n%CLASSIFICATION%" + + "\r\n%PARENTALRATING%\r\n%NEWLINE%"; + // + // edTitleTemplate + // + this.edTitleTemplate.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.edTitleTemplate.Location = new System.Drawing.Point(75, 19); + this.edTitleTemplate.Name = "edTitleTemplate"; + this.edTitleTemplate.Size = new System.Drawing.Size(245, 20); + this.edTitleTemplate.TabIndex = 20; + // + // label27 + // + this.label27.AutoSize = true; + this.label27.Location = new System.Drawing.Point(6, 22); + this.label27.Name = "label27"; + this.label27.Size = new System.Drawing.Size(30, 13); + this.label27.TabIndex = 19; + this.label27.Text = "Title:"; + // + // label28 + // + this.label28.AutoSize = true; + this.label28.Location = new System.Drawing.Point(6, 48); + this.label28.Name = "label28"; + this.label28.Size = new System.Drawing.Size(63, 13); + this.label28.TabIndex = 21; + this.label28.Text = "Description:"; + // + // label38 + // + this.label38.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.label38.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, ((System.Drawing.FontStyle)((System.Drawing.FontStyle.Bold | System.Drawing.FontStyle.Italic))), System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.label38.Location = new System.Drawing.Point(326, 16); + this.label38.Name = "label38"; + this.label38.Size = new System.Drawing.Size(125, 61); + this.label38.TabIndex = 35; + this.label38.Text = "You can use any combination of the placeholders shown below"; + // + // edDescriptionTemplate + // + this.edDescriptionTemplate.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.edDescriptionTemplate.Location = new System.Drawing.Point(75, 45); + this.edDescriptionTemplate.Name = "edDescriptionTemplate"; + this.edDescriptionTemplate.Size = new System.Drawing.Size(245, 20); + this.edDescriptionTemplate.TabIndex = 22; + // + // label30 + // + this.label30.AutoSize = true; + this.label30.Location = new System.Drawing.Point(6, 103); + this.label30.Name = "label30"; + this.label30.Size = new System.Drawing.Size(30, 13); + this.label30.TabIndex = 23; + this.label30.Text = "Title:"; + // + // edTitleTest + // + this.edTitleTest.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.edTitleTest.Location = new System.Drawing.Point(75, 100); + this.edTitleTest.Name = "edTitleTest"; + this.edTitleTest.ReadOnly = true; + this.edTitleTest.Size = new System.Drawing.Size(245, 20); + this.edTitleTest.TabIndex = 24; + // + // label29 + // + this.label29.AutoSize = true; + this.label29.Location = new System.Drawing.Point(6, 129); + this.label29.Name = "label29"; + this.label29.Size = new System.Drawing.Size(63, 13); + this.label29.TabIndex = 25; + this.label29.Text = "Description:"; + // + // edDescriptionTest + // + this.edDescriptionTest.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) + | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.edDescriptionTest.Location = new System.Drawing.Point(75, 126); + this.edDescriptionTest.Multiline = true; + this.edDescriptionTest.Name = "edDescriptionTest"; + this.edDescriptionTest.ReadOnly = true; + this.edDescriptionTest.Size = new System.Drawing.Size(245, 58); + this.edDescriptionTest.TabIndex = 26; + // + // btnTest + // + this.btnTest.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.btnTest.Location = new System.Drawing.Point(245, 71); + this.btnTest.Name = "btnTest"; + this.btnTest.Size = new System.Drawing.Size(75, 23); + this.btnTest.TabIndex = 27; + this.btnTest.Text = "Test"; + this.btnTest.UseVisualStyleBackColor = true; + this.btnTest.Click += new System.EventHandler(this.btnTest_Click); + // + // groupBox2 + // + this.groupBox2.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupBox2.Controls.Add(this.label5); + this.groupBox2.Controls.Add(this.label4); + this.groupBox2.Controls.Add(this.label3); + this.groupBox2.Controls.Add(this.dateTimePickerEPGSlotEnd); + this.groupBox2.Controls.Add(this.label2); + this.groupBox2.Controls.Add(this.dateTimePickerEPGSlotStart); + this.groupBox2.Controls.Add(this.checkBoxUseEPGTimeSlot); + this.groupBox2.Controls.Add(this.numericUpDownEpgRefresh); + this.groupBox2.Controls.Add(this.numericUpDownEpgTimeOut); + this.groupBox2.Controls.Add(this.checkBoxEnableEPGWhileIdle); + this.groupBox2.Controls.Add(this.label15); + this.groupBox2.Controls.Add(this.label14); + this.groupBox2.Controls.Add(this.label8); + this.groupBox2.Controls.Add(this.label7); + this.groupBox2.Location = new System.Drawing.Point(235, 96); + this.groupBox2.Name = "groupBox2"; + this.groupBox2.Size = new System.Drawing.Size(225, 179); + this.groupBox2.TabIndex = 40; + this.groupBox2.TabStop = false; + this.groupBox2.Text = "EPG grabbing while idle"; + // + // numericUpDownEpgRefresh + // + this.numericUpDownEpgRefresh.Location = new System.Drawing.Point(86, 68); + this.numericUpDownEpgRefresh.Maximum = new decimal(new int[] { 3600, 0, 0, 0}); - this.numericUpDownEpgRefresh.Name = "numericUpDownEpgRefresh"; - this.numericUpDownEpgRefresh.Size = new System.Drawing.Size(85, 20); - this.numericUpDownEpgRefresh.TabIndex = 10; - this.numericUpDownEpgRefresh.TextAlign = System.Windows.Forms.HorizontalAlignment.Center; - this.numericUpDownEpgRefresh.Value = new decimal(new int[] { + this.numericUpDownEpgRefresh.Name = "numericUpDownEpgRefresh"; + this.numericUpDownEpgRefresh.Size = new System.Drawing.Size(85, 20); + this.numericUpDownEpgRefresh.TabIndex = 10; + this.numericUpDownEpgRefresh.TextAlign = System.Windows.Forms.HorizontalAlignment.Center; + this.numericUpDownEpgRefresh.Value = new decimal(new int[] { 240, 0, 0, 0}); - // - // numericUpDownEpgTimeOut - // - this.numericUpDownEpgTimeOut.Location = new System.Drawing.Point(86, 42); - this.numericUpDownEpgTimeOut.Maximum = new decimal(new int[] { + // + // numericUpDownEpgTimeOut + // + this.numericUpDownEpgTimeOut.Location = new System.Drawing.Point(86, 42); + this.numericUpDownEpgTimeOut.Maximum = new decimal(new int[] { 3600, 0, 0, 0}); - this.numericUpDownEpgTimeOut.Name = "numericUpDownEpgTimeOut"; - this.numericUpDownEpgTimeOut.Size = new System.Drawing.Size(85, 20); - this.numericUpDownEpgTimeOut.TabIndex = 10; - this.numericUpDownEpgTimeOut.TextAlign = System.Windows.Forms.HorizontalAlignment.Center; - this.numericUpDownEpgTimeOut.Value = new decimal(new int[] { + this.numericUpDownEpgTimeOut.Name = "numericUpDownEpgTimeOut"; + this.numericUpDownEpgTimeOut.Size = new System.Drawing.Size(85, 20); + this.numericUpDownEpgTimeOut.TabIndex = 10; + this.numericUpDownEpgTimeOut.TextAlign = System.Windows.Forms.HorizontalAlignment.Center; + this.numericUpDownEpgTimeOut.Value = new decimal(new int[] { 10, 0, 0, 0}); - // - // checkBoxEnableEPGWhileIdle - // - this.checkBoxEnableEPGWhileIdle.AutoSize = true; - this.checkBoxEnableEPGWhileIdle.FlatStyle = System.Windows.Forms.FlatStyle.Popup; - this.checkBoxEnableEPGWhileIdle.Location = new System.Drawing.Point(10, 19); - this.checkBoxEnableEPGWhileIdle.Name = "checkBoxEnableEPGWhileIdle"; - this.checkBoxEnableEPGWhileIdle.Size = new System.Drawing.Size(63, 17); - this.checkBoxEnableEPGWhileIdle.TabIndex = 11; - this.checkBoxEnableEPGWhileIdle.Text = "Enabled"; - this.checkBoxEnableEPGWhileIdle.UseVisualStyleBackColor = true; - // - // label15 - // - this.label15.AutoSize = true; - this.label15.Location = new System.Drawing.Point(177, 68); - this.label15.Name = "label15"; - this.label15.Size = new System.Drawing.Size(28, 13); - this.label15.TabIndex = 7; - this.label15.Text = "mins"; - // - // label14 - // - this.label14.AutoSize = true; - this.label14.Location = new System.Drawing.Point(7, 70); - this.label14.Name = "label14"; - this.label14.Size = new System.Drawing.Size(73, 13); - this.label14.TabIndex = 5; - this.label14.Text = "Refresh every"; - // - // label8 - // - this.label8.AutoSize = true; - this.label8.Location = new System.Drawing.Point(177, 44); - this.label8.Name = "label8"; - this.label8.Size = new System.Drawing.Size(28, 13); - this.label8.TabIndex = 4; - this.label8.Text = "mins"; - // - // label7 - // - this.label7.AutoSize = true; - this.label7.Location = new System.Drawing.Point(7, 44); - this.label7.Name = "label7"; - this.label7.Size = new System.Drawing.Size(48, 13); - this.label7.TabIndex = 2; - this.label7.Text = "Timeout:"; - // - // groupBox5 - // - this.groupBox5.Controls.Add(this.numericUpDownTSEpgTimeout); - this.groupBox5.Controls.Add(this.checkBoxEnableEpgWhileTimeshifting); - this.groupBox5.Controls.Add(this.label22); - this.groupBox5.Controls.Add(this.label23); - this.groupBox5.Location = new System.Drawing.Point(3, 96); - this.groupBox5.Name = "groupBox5"; - this.groupBox5.Size = new System.Drawing.Size(226, 98); - this.groupBox5.TabIndex = 39; - this.groupBox5.TabStop = false; - this.groupBox5.Text = "EPG grabbing while timeshifting/recording"; - // - // numericUpDownTSEpgTimeout - // - this.numericUpDownTSEpgTimeout.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) - | System.Windows.Forms.AnchorStyles.Right))); - this.numericUpDownTSEpgTimeout.Location = new System.Drawing.Point(70, 42); - this.numericUpDownTSEpgTimeout.Maximum = new decimal(new int[] { + // + // checkBoxEnableEPGWhileIdle + // + this.checkBoxEnableEPGWhileIdle.AutoSize = true; + this.checkBoxEnableEPGWhileIdle.FlatStyle = System.Windows.Forms.FlatStyle.Popup; + this.checkBoxEnableEPGWhileIdle.Location = new System.Drawing.Point(10, 19); + this.checkBoxEnableEPGWhileIdle.Name = "checkBoxEnableEPGWhileIdle"; + this.checkBoxEnableEPGWhileIdle.Size = new System.Drawing.Size(63, 17); + this.checkBoxEnableEPGWhileIdle.TabIndex = 11; + this.checkBoxEnableEPGWhileIdle.Text = "Enabled"; + this.checkBoxEnableEPGWhileIdle.UseVisualStyleBackColor = true; + // + // label15 + // + this.label15.AutoSize = true; + this.label15.Location = new System.Drawing.Point(177, 68); + this.label15.Name = "label15"; + this.label15.Size = new System.Drawing.Size(28, 13); + this.label15.TabIndex = 7; + this.label15.Text = "mins"; + // + // label14 + // + this.label14.AutoSize = true; + this.label14.Location = new System.Drawing.Point(7, 70); + this.label14.Name = "label14"; + this.label14.Size = new System.Drawing.Size(73, 13); + this.label14.TabIndex = 5; + this.label14.Text = "Refresh every"; + // + // label8 + // + this.label8.AutoSize = true; + this.label8.Location = new System.Drawing.Point(177, 44); + this.label8.Name = "label8"; + this.label8.Size = new System.Drawing.Size(28, 13); + this.label8.TabIndex = 4; + this.label8.Text = "mins"; + // + // label7 + // + this.label7.AutoSize = true; + this.label7.Location = new System.Drawing.Point(7, 44); + this.label7.Name = "label7"; + this.label7.Size = new System.Drawing.Size(48, 13); + this.label7.TabIndex = 2; + this.label7.Text = "Timeout:"; + // + // groupBox5 + // + this.groupBox5.Controls.Add(this.numericUpDownTSEpgTimeout); + this.groupBox5.Controls.Add(this.checkBoxEnableEpgWhileTimeshifting); + this.groupBox5.Controls.Add(this.label22); + this.groupBox5.Controls.Add(this.label23); + this.groupBox5.Location = new System.Drawing.Point(3, 96); + this.groupBox5.Name = "groupBox5"; + this.groupBox5.Size = new System.Drawing.Size(226, 179); + this.groupBox5.TabIndex = 39; + this.groupBox5.TabStop = false; + this.groupBox5.Text = "EPG grabbing while timeshifting/recording"; + // + // numericUpDownTSEpgTimeout + // + this.numericUpDownTSEpgTimeout.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.numericUpDownTSEpgTimeout.Location = new System.Drawing.Point(70, 42); + this.numericUpDownTSEpgTimeout.Maximum = new decimal(new int[] { 3600, 0, 0, 0}); - this.numericUpDownTSEpgTimeout.Name = "numericUpDownTSEpgTimeout"; - this.numericUpDownTSEpgTimeout.Size = new System.Drawing.Size(86, 20); - this.numericUpDownTSEpgTimeout.TabIndex = 10; - this.numericUpDownTSEpgTimeout.TextAlign = System.Windows.Forms.HorizontalAlignment.Center; - this.numericUpDownTSEpgTimeout.Value = new decimal(new int[] { + this.numericUpDownTSEpgTimeout.Name = "numericUpDownTSEpgTimeout"; + this.numericUpDownTSEpgTimeout.Size = new System.Drawing.Size(86, 20); + this.numericUpDownTSEpgTimeout.TabIndex = 10; + this.numericUpDownTSEpgTimeout.TextAlign = System.Windows.Forms.HorizontalAlignment.Center; + this.numericUpDownTSEpgTimeout.Value = new decimal(new int[] { 2, 0, 0, 0}); - // - // checkBoxEnableEpgWhileTimeshifting - // - this.checkBoxEnableEpgWhileTimeshifting.AutoSize = true; - this.checkBoxEnableEpgWhileTimeshifting.FlatStyle = System.Windows.Forms.FlatStyle.Popup; - this.checkBoxEnableEpgWhileTimeshifting.Location = new System.Drawing.Point(11, 19); - this.checkBoxEnableEpgWhileTimeshifting.Name = "checkBoxEnableEpgWhileTimeshifting"; - this.checkBoxEnableEpgWhileTimeshifting.Size = new System.Drawing.Size(63, 17); - this.checkBoxEnableEpgWhileTimeshifting.TabIndex = 9; - this.checkBoxEnableEpgWhileTimeshifting.Text = "Enabled"; - this.checkBoxEnableEpgWhileTimeshifting.UseVisualStyleBackColor = true; - // - // label22 - // - this.label22.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); - this.label22.AutoSize = true; - this.label22.Location = new System.Drawing.Point(173, 42); - this.label22.Name = "label22"; - this.label22.Size = new System.Drawing.Size(28, 13); - this.label22.TabIndex = 7; - this.label22.Text = "mins"; - // - // label23 - // - this.label23.AutoSize = true; - this.label23.Location = new System.Drawing.Point(6, 44); - this.label23.Name = "label23"; - this.label23.Size = new System.Drawing.Size(48, 13); - this.label23.TabIndex = 5; - this.label23.Text = "Timeout:"; - // - // groupBox7 - // - this.groupBox7.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) - | System.Windows.Forms.AnchorStyles.Right))); - this.groupBox7.Controls.Add(this.checkboxSameTransponder); - this.groupBox7.Controls.Add(this.label1); - this.groupBox7.Controls.Add(this.checkBoxEnableCRCCheck); - this.groupBox7.Controls.Add(this.checkBoxAlwaysUpdate); - this.groupBox7.Controls.Add(this.checkBoxAlwaysFillHoles); - this.groupBox7.Location = new System.Drawing.Point(3, 3); - this.groupBox7.Name = "groupBox7"; - this.groupBox7.Size = new System.Drawing.Size(457, 90); - this.groupBox7.TabIndex = 38; - this.groupBox7.TabStop = false; - this.groupBox7.Text = "General"; - // - // checkBoxEnableCRCCheck - // - this.checkBoxEnableCRCCheck.AutoSize = true; - this.checkBoxEnableCRCCheck.FlatStyle = System.Windows.Forms.FlatStyle.Popup; - this.checkBoxEnableCRCCheck.Location = new System.Drawing.Point(11, 42); - this.checkBoxEnableCRCCheck.Name = "checkBoxEnableCRCCheck"; - this.checkBoxEnableCRCCheck.Size = new System.Drawing.Size(115, 17); - this.checkBoxEnableCRCCheck.TabIndex = 12; - this.checkBoxEnableCRCCheck.Text = "Enable CRC check"; - this.checkBoxEnableCRCCheck.UseVisualStyleBackColor = true; - // - // checkboxSameTransponder - // - this.checkboxSameTransponder.AutoSize = true; - this.checkboxSameTransponder.FlatStyle = System.Windows.Forms.FlatStyle.Popup; - this.checkboxSameTransponder.Location = new System.Drawing.Point(11, 65); - this.checkboxSameTransponder.Name = "checkboxSameTransponder"; - this.checkboxSameTransponder.Size = new System.Drawing.Size(257, 17); - this.checkboxSameTransponder.TabIndex = 14; - this.checkboxSameTransponder.Text = "Grap EPG only for channels on same transponder"; - this.checkboxSameTransponder.UseVisualStyleBackColor = true; - // - // label1 - // - this.label1.AutoSize = true; - this.label1.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Point, ((byte)(0))); - this.label1.Location = new System.Drawing.Point(132, 39); - this.label1.Name = "label1"; - this.label1.Size = new System.Drawing.Size(321, 26); - this.label1.TabIndex = 13; - this.label1.Text = "(This will increase stability of EPG grabbing.If your provider doesn\'t \r\nbroadcas" + - "t CRC checksums, you have to disable it)"; - // - // checkBoxAlwaysUpdate - // - this.checkBoxAlwaysUpdate.AutoSize = true; - this.checkBoxAlwaysUpdate.FlatStyle = System.Windows.Forms.FlatStyle.Popup; - this.checkBoxAlwaysUpdate.Location = new System.Drawing.Point(140, 19); - this.checkBoxAlwaysUpdate.Name = "checkBoxAlwaysUpdate"; - this.checkBoxAlwaysUpdate.Size = new System.Drawing.Size(310, 17); - this.checkBoxAlwaysUpdate.TabIndex = 11; - this.checkBoxAlwaysUpdate.Text = "Always try to update existing entries (might raise CPU usage!)"; - this.checkBoxAlwaysUpdate.UseVisualStyleBackColor = true; - // - // checkBoxAlwaysFillHoles - // - this.checkBoxAlwaysFillHoles.AutoSize = true; - this.checkBoxAlwaysFillHoles.FlatStyle = System.Windows.Forms.FlatStyle.Popup; - this.checkBoxAlwaysFillHoles.Location = new System.Drawing.Point(11, 19); - this.checkBoxAlwaysFillHoles.Name = "checkBoxAlwaysFillHoles"; - this.checkBoxAlwaysFillHoles.Size = new System.Drawing.Size(123, 17); - this.checkBoxAlwaysFillHoles.TabIndex = 9; - this.checkBoxAlwaysFillHoles.Text = "Always try to fill holes"; - this.checkBoxAlwaysFillHoles.UseVisualStyleBackColor = true; - // - // tabPage1 - // - this.tabPage1.Controls.Add(this.groupBox9); - this.tabPage1.Controls.Add(this.groupBox7); - this.tabPage1.Controls.Add(this.groupBox2); - this.tabPage1.Controls.Add(this.groupBox5); - this.tabPage1.Location = new System.Drawing.Point(4, 22); - this.tabPage1.Name = "tabPage1"; - this.tabPage1.Padding = new System.Windows.Forms.Padding(3); - this.tabPage1.Size = new System.Drawing.Size(466, 410); - this.tabPage1.TabIndex = 0; - this.tabPage1.Text = "DVB EPG"; - this.tabPage1.UseVisualStyleBackColor = true; - // - // tabControlEpg - // - this.tabControlEpg.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) - | System.Windows.Forms.AnchorStyles.Left) - | System.Windows.Forms.AnchorStyles.Right))); - this.tabControlEpg.Controls.Add(this.tabPage1); - this.tabControlEpg.Location = new System.Drawing.Point(0, 0); - this.tabControlEpg.Name = "tabControlEpg"; - this.tabControlEpg.SelectedIndex = 0; - this.tabControlEpg.Size = new System.Drawing.Size(474, 436); - this.tabControlEpg.TabIndex = 1; - // - // Epg - // - this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); - this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.Controls.Add(this.tabControlEpg); - this.Name = "Epg"; - this.Size = new System.Drawing.Size(474, 439); - this.groupBox9.ResumeLayout(false); - this.groupBox9.PerformLayout(); - this.groupBox2.ResumeLayout(false); - this.groupBox2.PerformLayout(); - ((System.ComponentModel.ISupportInitialize)(this.numericUpDownEpgRefresh)).EndInit(); - ((System.ComponentModel.ISupportInitialize)(this.numericUpDownEpgTimeOut)).EndInit(); - this.groupBox5.ResumeLayout(false); - this.groupBox5.PerformLayout(); - ((System.ComponentModel.ISupportInitialize)(this.numericUpDownTSEpgTimeout)).EndInit(); - this.groupBox7.ResumeLayout(false); - this.groupBox7.PerformLayout(); - this.tabPage1.ResumeLayout(false); - this.tabControlEpg.ResumeLayout(false); - this.ResumeLayout(false); + // + // checkBoxEnableEpgWhileTimeshifting + // + this.checkBoxEnableEpgWhileTimeshifting.AutoSize = true; + this.checkBoxEnableEpgWhileTimeshifting.FlatStyle = System.Windows.Forms.FlatStyle.Popup; + this.checkBoxEnableEpgWhileTimeshifting.Location = new System.Drawing.Point(11, 19); + this.checkBoxEnableEpgWhileTimeshifting.Name = "checkBoxEnableEpgWhileTimeshifting"; + this.checkBoxEnableEpgWhileTimeshifting.Size = new System.Drawing.Size(63, 17); + this.checkBoxEnableEpgWhileTimeshifting.TabIndex = 9; + this.checkBoxEnableEpgWhileTimeshifting.Text = "Enabled"; + this.checkBoxEnableEpgWhileTimeshifting.UseVisualStyleBackColor = true; + // + // label22 + // + this.label22.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.label22.AutoSize = true; + this.label22.Location = new System.Drawing.Point(173, 42); + this.label22.Name = "label22"; + this.label22.Size = new System.Drawing.Size(28, 13); + this.label22.TabIndex = 7; + this.label22.Text = "mins"; + // + // label23 + // + this.label23.AutoSize = true; + this.label23.Location = new System.Drawing.Point(6, 44); + this.label23.Name = "label23"; + this.label23.Size = new System.Drawing.Size(48, 13); + this.label23.TabIndex = 5; + this.label23.Text = "Timeout:"; + // + // groupBox7 + // + this.groupBox7.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.groupBox7.Controls.Add(this.checkboxSameTransponder); + this.groupBox7.Controls.Add(this.label1); + this.groupBox7.Controls.Add(this.checkBoxEnableCRCCheck); + this.groupBox7.Controls.Add(this.checkBoxAlwaysUpdate); + this.groupBox7.Controls.Add(this.checkBoxAlwaysFillHoles); + this.groupBox7.Location = new System.Drawing.Point(3, 3); + this.groupBox7.Name = "groupBox7"; + this.groupBox7.Size = new System.Drawing.Size(457, 90); + this.groupBox7.TabIndex = 38; + this.groupBox7.TabStop = false; + this.groupBox7.Text = "General"; + // + // checkboxSameTransponder + // + this.checkboxSameTransponder.AutoSize = true; + this.checkboxSameTransponder.FlatStyle = System.Windows.Forms.FlatStyle.Popup; + this.checkboxSameTransponder.Location = new System.Drawing.Point(11, 65); + this.checkboxSameTransponder.Name = "checkboxSameTransponder"; + this.checkboxSameTransponder.Size = new System.Drawing.Size(257, 17); + this.checkboxSameTransponder.TabIndex = 14; + this.checkboxSameTransponder.Text = "Grap EPG only for channels on same transponder"; + this.checkboxSameTransponder.UseVisualStyleBackColor = true; + // + // label1 + // + this.label1.AutoSize = true; + this.label1.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.label1.Location = new System.Drawing.Point(132, 39); + this.label1.Name = "label1"; + this.label1.Size = new System.Drawing.Size(321, 26); + this.label1.TabIndex = 13; + this.label1.Text = "(This will increase stability of EPG grabbing.If your provider doesn\'t \r\nbroadcas" + + "t CRC checksums, you have to disable it)"; + // + // checkBoxEnableCRCCheck + // + this.checkBoxEnableCRCCheck.AutoSize = true; + this.checkBoxEnableCRCCheck.FlatStyle = System.Windows.Forms.FlatStyle.Popup; + this.checkBoxEnableCRCCheck.Location = new System.Drawing.Point(11, 42); + this.checkBoxEnableCRCCheck.Name = "checkBoxEnableCRCCheck"; + this.checkBoxEnableCRCCheck.Size = new System.Drawing.Size(115, 17); + this.checkBoxEnableCRCCheck.TabIndex = 12; + this.checkBoxEnableCRCCheck.Text = "Enable CRC check"; + this.checkBoxEnableCRCCheck.UseVisualStyleBackColor = true; + // + // checkBoxAlwaysUpdate + // + this.checkBoxAlwaysUpdate.AutoSize = true; + this.checkBoxAlwaysUpdate.FlatStyle = System.Windows.Forms.FlatStyle.Popup; + this.checkBoxAlwaysUpdate.Location = new System.Drawing.Point(140, 19); + this.checkBoxAlwaysUpdate.Name = "checkBoxAlwaysUpdate"; + this.checkBoxAlwaysUpdate.Size = new System.Drawing.Size(310, 17); + this.checkBoxAlwaysUpdate.TabIndex = 11; + this.checkBoxAlwaysUpdate.Text = "Always try to update existing entries (might raise CPU usage!)"; + this.checkBoxAlwaysUpdate.UseVisualStyleBackColor = true; + // + // checkBoxAlwaysFillHoles + // + this.checkBoxAlwaysFillHoles.AutoSize = true; + this.checkBoxAlwaysFillHoles.FlatStyle = System.Windows.Forms.FlatStyle.Popup; + this.checkBoxAlwaysFillHoles.Location = new System.Drawing.Point(11, 19); + this.checkBoxAlwaysFillHoles.Name = "checkBoxAlwaysFillHoles"; + this.checkBoxAlwaysFillHoles.Size = new System.Drawing.Size(123, 17); + this.checkBoxAlwaysFillHoles.TabIndex = 9; + this.checkBoxAlwaysFillHoles.Text = "Always try to fill holes"; + this.checkBoxAlwaysFillHoles.UseVisualStyleBackColor = true; + // + // tabPage1 + // + this.tabPage1.Controls.Add(this.groupBox9); + this.tabPage1.Controls.Add(this.groupBox7); + this.tabPage1.Controls.Add(this.groupBox2); + this.tabPage1.Controls.Add(this.groupBox5); + this.tabPage1.Location = new System.Drawing.Point(4, 22); + this.tabPage1.Name = "tabPage1"; + this.tabPage1.Padding = new System.Windows.Forms.Padding(3); + this.tabPage1.Size = new System.Drawing.Size(466, 476); + this.tabPage1.TabIndex = 0; + this.tabPage1.Text = "DVB EPG"; + this.tabPage1.UseVisualStyleBackColor = true; + // + // tabControlEpg + // + this.tabControlEpg.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) + | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.tabControlEpg.Controls.Add(this.tabPage1); + this.tabControlEpg.Location = new System.Drawing.Point(0, 0); + this.tabControlEpg.Name = "tabControlEpg"; + this.tabControlEpg.SelectedIndex = 0; + this.tabControlEpg.Size = new System.Drawing.Size(474, 502); + this.tabControlEpg.TabIndex = 1; + // + // checkBoxUseEPGTimeSlot + // + this.checkBoxUseEPGTimeSlot.AutoSize = true; + this.checkBoxUseEPGTimeSlot.FlatStyle = System.Windows.Forms.FlatStyle.Popup; + this.checkBoxUseEPGTimeSlot.Location = new System.Drawing.Point(10, 99); + this.checkBoxUseEPGTimeSlot.Name = "checkBoxUseEPGTimeSlot"; + this.checkBoxUseEPGTimeSlot.Size = new System.Drawing.Size(169, 17); + this.checkBoxUseEPGTimeSlot.TabIndex = 12; + this.checkBoxUseEPGTimeSlot.Text = "Use Timeslot for EPG grabbing"; + this.checkBoxUseEPGTimeSlot.UseVisualStyleBackColor = true; + this.checkBoxUseEPGTimeSlot.CheckedChanged += new System.EventHandler(this.checkBoxUseEPGTimeSlot_CheckedChanged); + // + // dateTimePickerEPGSlotStart + // + this.dateTimePickerEPGSlotStart.Format = System.Windows.Forms.DateTimePickerFormat.Time; + this.dateTimePickerEPGSlotStart.Location = new System.Drawing.Point(86, 122); + this.dateTimePickerEPGSlotStart.Name = "dateTimePickerEPGSlotStart"; + this.dateTimePickerEPGSlotStart.ShowUpDown = true; + this.dateTimePickerEPGSlotStart.Size = new System.Drawing.Size(85, 20); + this.dateTimePickerEPGSlotStart.TabIndex = 13; + // + // label2 + // + this.label2.AutoSize = true; + this.label2.Location = new System.Drawing.Point(7, 128); + this.label2.Name = "label2"; + this.label2.Size = new System.Drawing.Size(57, 13); + this.label2.TabIndex = 14; + this.label2.Text = "Not before"; + // + // label3 + // + this.label3.AutoSize = true; + this.label3.Location = new System.Drawing.Point(7, 154); + this.label3.Name = "label3"; + this.label3.Size = new System.Drawing.Size(48, 13); + this.label3.TabIndex = 16; + this.label3.Text = "Not after"; + // + // dateTimePickerEPGSlotEnd + // + this.dateTimePickerEPGSlotEnd.Format = System.Windows.Forms.DateTimePickerFormat.Time; + this.dateTimePickerEPGSlotEnd.Location = new System.Drawing.Point(86, 148); + this.dateTimePickerEPGSlotEnd.Name = "dateTimePickerEPGSlotEnd"; + this.dateTimePickerEPGSlotEnd.ShowUpDown = true; + this.dateTimePickerEPGSlotEnd.Size = new System.Drawing.Size(85, 20); + this.dateTimePickerEPGSlotEnd.TabIndex = 15; + // + // label4 + // + this.label4.AutoSize = true; + this.label4.Location = new System.Drawing.Point(177, 128); + this.label4.Name = "label4"; + this.label4.Size = new System.Drawing.Size(41, 13); + this.label4.TabIndex = 17; + this.label4.Text = "o\'clock"; + // + // label5 + // + this.label5.AutoSize = true; + this.label5.Location = new System.Drawing.Point(177, 154); + this.label5.Name = "label5"; + this.label5.Size = new System.Drawing.Size(41, 13); + this.label5.TabIndex = 18; + this.label5.Text = "o\'clock"; + // + // Epg + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.Controls.Add(this.tabControlEpg); + this.Name = "Epg"; + this.Size = new System.Drawing.Size(474, 502); + this.groupBox9.ResumeLayout(false); + this.groupBox9.PerformLayout(); + this.groupBox2.ResumeLayout(false); + this.groupBox2.PerformLayout(); + ((System.ComponentModel.ISupportInitialize)(this.numericUpDownEpgRefresh)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.numericUpDownEpgTimeOut)).EndInit(); + this.groupBox5.ResumeLayout(false); + this.groupBox5.PerformLayout(); + ((System.ComponentModel.ISupportInitialize)(this.numericUpDownTSEpgTimeout)).EndInit(); + this.groupBox7.ResumeLayout(false); + this.groupBox7.PerformLayout(); + this.tabPage1.ResumeLayout(false); + this.tabControlEpg.ResumeLayout(false); + this.ResumeLayout(false); } @@ -522,5 +602,12 @@ private System.Windows.Forms.Label label1; private MediaPortal.UserInterface.Controls.MPCheckBox checkBoxEnableCRCCheck; private MediaPortal.UserInterface.Controls.MPCheckBox checkboxSameTransponder; + private MediaPortal.UserInterface.Controls.MPCheckBox checkBoxUseEPGTimeSlot; + private System.Windows.Forms.Label label5; + private System.Windows.Forms.Label label4; + private System.Windows.Forms.Label label3; + private System.Windows.Forms.DateTimePicker dateTimePickerEPGSlotEnd; + private System.Windows.Forms.Label label2; + private System.Windows.Forms.DateTimePicker dateTimePickerEPGSlotStart; } } Index: TvEngine3/TVLibrary/TvService/Epg/EpgGrabber.cs =================================================================== --- TvEngine3/TVLibrary/TvService/Epg/EpgGrabber.cs (Revision 28136) +++ TvEngine3/TVLibrary/TvService/Epg/EpgGrabber.cs (Arbeitskopie) @@ -109,6 +109,9 @@ return; } + if (!_epgTimeSlotActive()) + return; + Setting s = layer.GetSetting("timeoutEPGRefresh", "240"); if (Int32.TryParse(s.Value, out _epgReGrabAfter) == false) { @@ -200,6 +203,31 @@ #region private members + private Boolean _epgTimeSlotActive() + { + TvBusinessLayer layer = new TvBusinessLayer(); + + Setting s = layer.GetSetting("useEPGGrabbingTimeSlot", "no"); + if (s.Value == "no") + return true; + + String slotStartString = layer.GetSetting("epgTimeSlotStart", "00:00:00").Value; + String[] slotStartValues = slotStartString.Split(':'); + String slotEndString = layer.GetSetting("epgTimeSlotEnd", "23:59:00").Value; + String[] slotEndValues = slotEndString.Split(':'); + Int64 slotStarts = Convert.ToInt32(slotStartValues[0]) * 10000 + Convert.ToInt32(slotStartValues[1]) * 100 + Convert.ToInt32(slotStartValues[2]); + Int64 slotEnds = Convert.ToInt32(slotEndValues[0]) * 10000 + Convert.ToInt32(slotEndValues[1]) * 100 + Convert.ToInt32(slotEndValues[2]); + DateTime currentTime = DateTime.Now; + Int64 currentSlot = currentTime.Hour * 10000 + currentTime.Minute * 100 + currentTime.Second; + + if ((slotEnds > slotStarts) && (currentSlot >= slotStarts) && (currentSlot <= slotEnds)) + return true; + if ((slotEnds < slotStarts) && ((currentSlot >= slotStarts) || (currentSlot <= slotEnds))) + return true; + + return false; + } + /// /// timer callback. /// This method is called by a timer every 30 seconds to wake up the epg grabber @@ -225,10 +253,14 @@ if (string.IsNullOrEmpty(threadname)) Thread.CurrentThread.Name = "DVB EPG timer"; } - catch (InvalidOperationException) {} + catch (InvalidOperationException) { } if (_tvController.AllCardsIdle == false) return; + + if (!_epgTimeSlotActive()) + return; + foreach (EpgCard card in _epgCards) { //Log.Epg("card:{0} grabbing:{1}", card.Card.IdCard, card.IsGrabbing); @@ -283,6 +315,9 @@ //find next channel to grab while (TransponderList.Instance.CurrentTransponder.GetNextChannel() != null) { + if (!_epgTimeSlotActive()) + return; + //get the channel Channel ch = TransponderList.Instance.CurrentTransponder.CurrentChannel; Index: TvEngine3/TVLibrary/TvService/TVController.cs =================================================================== --- TvEngine3/TVLibrary/TvService/TVController.cs (Revision 28136) +++ TvEngine3/TVLibrary/TvService/TVController.cs (Arbeitskopie) @@ -745,7 +745,7 @@ if (delFile) File.Delete(fInfo.FullName); } - catch (IOException) {} + catch (IOException) { } } } } @@ -844,7 +844,7 @@ { heartBeatMonitorThread.Abort(); } - catch (Exception) {} + catch (Exception) { } } } } @@ -1737,7 +1737,7 @@ public byte[] GetTeletextPage(IUser user, int pageNumber, int subPageNumber) { if (ValidateTvControllerParams(user)) - return new byte[] {1}; + return new byte[] { 1 }; return _cards[user.CardId].Teletext.GetTeletextPage(user, pageNumber, subPageNumber); } @@ -2911,7 +2911,7 @@ { try { - Gentle.Common.CacheManager.ClearQueryResultsByType(typeof (Schedule)); + Gentle.Common.CacheManager.ClearQueryResultsByType(typeof(Schedule)); if (_scheduler != null) { _scheduler.ResetTimer(); @@ -2934,7 +2934,7 @@ { try { - Gentle.Common.CacheManager.ClearQueryResultsByType(typeof (Schedule)); + Gentle.Common.CacheManager.ClearQueryResultsByType(typeof(Schedule)); if (_scheduler != null) { _scheduler.ResetTimer();