public static Brush EpgDataContentBrush(List <EpgContentData> nibbleList) { if (nibbleList != null) { //0x0C,0D(将来用)は、設定UIは無いが色設定データ自体はあるので他と同様に扱う。 //0x0E00(番組特性コード)と0x0E02~(未定義で将来の割り当ては不明)は除外。 //0x10以上は存在しないが、コード上は弾いておく。 EpgContentData info = nibbleList.Find(n => n.content_nibble_level_1 <= 0x0F && (n.content_nibble_level_1 != 0x0E || n.content_nibble_level_2 == 0x01)); if (info != null) { if (info.content_nibble_level_1 == 0x0E) { //CSのコード置き換え。通常は一般のジャンル情報も付いているので、効果は薄いかも。 switch (info.user_nibble_1) { case 0x00: return(CommonManager.Instance.CustContentColorList[0x01]); //スポーツ(CS)→スポーツ case 0x01: return(CommonManager.Instance.CustContentColorList[0x06]); //洋画(CS)→映画 case 0x02: return(CommonManager.Instance.CustContentColorList[0x06]); //邦画(CS)→映画 case 0x03: return(CommonManager.Instance.CustContentColorList[0x0F]); //その他(CS)→その他 default: return(CommonManager.Instance.CustContentColorList[0x0F]); //将来用→その他 } } return(CommonManager.Instance.CustContentColorList[info.content_nibble_level_1]); } } return(CommonManager.Instance.CustContentColorList[0x10]); }
private static void CopyData(EpgContentData src, EpgContentData dest) { dest.content_nibble_level_1 = src.content_nibble_level_1; dest.content_nibble_level_2 = src.content_nibble_level_2; dest.user_nibble_1 = src.user_nibble_1; dest.user_nibble_2 = src.user_nibble_2; }
public static Brush EpgDataContentBrush(List <EpgContentData> nibbleList) { if (nibbleList != null) { EpgContentData info = nibbleList.Find(info1 => info1.content_nibble_level_1 <= 0x0B || info1.content_nibble_level_1 == 0x0E || info1.content_nibble_level_1 == 0x0F); if (info != null) { if (info.content_nibble_level_1 == 0x0E && info.content_nibble_level_2 == 0x01) { //CSのコード置き換え。通常は一般のジャンル情報も付いているので、効果は薄いかも。 switch (info.user_nibble_1) { case 0x00: return(CommonManager.Instance.CustContentColorList[0x01]); //スポーツ(CS)→スポーツ case 0x01: return(CommonManager.Instance.CustContentColorList[0x06]); //洋画(CS)→映画 case 0x02: return(CommonManager.Instance.CustContentColorList[0x06]); //邦画(CS)→映画 } //ラストへ } else { return(CommonManager.Instance.CustContentColorList[info.content_nibble_level_1]); } } } return(CommonManager.Instance.CustContentColorList[0x10]); }
public static Brush EpgDataContentBrush(List <EpgContentData> nibbleList, int EpgSettingIndex = 0, bool filtered = false) { List <Brush> colorList = filtered ? Settings.BrushCache.Epg[EpgSettingIndex].ContentFilteredColorList : Settings.BrushCache.Epg[EpgSettingIndex].ContentColorList; if (nibbleList != null) { //0x0C,0D(将来用)は、設定UIは無いが色設定データ自体はあるので他と同様に扱う。 //0x0E00(番組特性コード)と0x0E02~(未定義で将来の割り当ては不明)は除外。 //0x10以上は存在しないが、コード上は弾いておく。 EpgContentData info = nibbleList.Find(n => n.content_nibble_level_1 <= 0x0F && (n.content_nibble_level_1 != 0x0E || n.content_nibble_level_2 == 0x01)); if (info != null) { if (info.content_nibble_level_1 == 0x0E) { //CSのコード置き換え。通常は一般のジャンル情報も付いているので、効果は薄いかも。 switch (info.user_nibble_1) { case 0x00: return(colorList[0x01]); //スポーツ(CS)→スポーツ case 0x01: return(colorList[0x06]); //洋画(CS)→映画 case 0x02: return(colorList[0x06]); //邦画(CS)→映画 case 0x03: return(colorList[0x0F]); //その他(CS)→その他 default: return(colorList[0x0F]); //将来用→その他 } } return(colorList[info.content_nibble_level_1]); } } return(colorList[0x10]); }
static public void FixNibble(EpgContentData data) { if ((data.content_nibble_level_1 & 0xF0) == 0x70) { data.user_nibble_1 = (byte)(data.content_nibble_level_1 & 0x0F); data.user_nibble_2 = data.content_nibble_level_2; data.content_nibble_level_1 = 0x0E; data.content_nibble_level_2 = 0x01; } }
public void GetSearchKey(ref EpgSearchKeyInfo key) { try { if (checkBox_regExp.IsChecked == true) { key.regExpFlag = 1; key.aimaiFlag = 0; } else { key.regExpFlag = 0; if (checkBox_aimai.IsChecked == true) { key.aimaiFlag = 1; } else { key.aimaiFlag = 0; } } if (checkBox_titleOnly.IsChecked == true) { key.titleOnlyFlag = 1; } else { key.titleOnlyFlag = 0; } key.contentList.Clear(); foreach (ContentKindInfo info in listBox_content.Items) { EpgContentData item = new EpgContentData(); item.content_nibble_level_1 = info.Nibble1; item.content_nibble_level_2 = info.Nibble2; key.contentList.Add(item); } if (checkBox_notContent.IsChecked == true) { key.notContetFlag = 1; } else { key.notContetFlag = 0; } key.serviceList.Clear(); foreach (ServiceItem info in listView_service.Items) { if (info.IsSelected == true) { key.serviceList.Add((UInt64)info.ID); } } key.dateList.Clear(); foreach (DateItem info in listBox_date.Items) { key.dateList.Add(info.DateInfo); } if (checkBox_notDate.IsChecked == true) { key.notDateFlag = 1; } else { key.notDateFlag = 0; } if (radioButton_free_2.IsChecked == true) { //無料 key.freeCAFlag = 1; } else if (radioButton_free_3.IsChecked == true) { //有料 key.freeCAFlag = 2; } else { key.freeCAFlag = 0; } key.chkRecDay = Convert.ToUInt16(textBox_chkRecDay.Text.ToString()); if (key.chkRecDay > 0) { key.chkRecEnd = 1; } else { key.chkRecEnd = 0; } key.chkRecMin = Convert.ToUInt16(textBox_chkRecMin.Text.ToString()); } catch (Exception ex) { MessageBox.Show(ex.Message + "\r\n" + ex.StackTrace); } }
public static void CopyTo(this EpgContentData src, EpgContentData dest) { CopyObj.CopyTo(src, dest, CopyData); }
public static EpgContentData Clone(this EpgContentData src) { return(CopyObj.Clone(src, CopyData)); }
public void GetSearchKey(ref EpgSearchKeyInfo key) { try { key.regExpFlag = (byte)(checkBox_regExp.IsChecked == true ? 1 : 0); key.aimaiFlag = (byte)(checkBox_aimai.IsChecked == true ? 1 : 0); key.titleOnlyFlag = (byte)(checkBox_titleOnly.IsChecked == true ? 1 : 0); key.caseFlag = (byte)(checkBox_case.IsChecked == true ? 1 : 0); key.keyDisabledFlag = (byte)(checkBox_keyDisabled.IsChecked == true ? 1 : 0); key.contentList.Clear(); foreach (ContentKindInfo info in listBox_content.Items) { EpgContentData item = new EpgContentData(); item.content_nibble_level_1 = info.Nibble1; item.content_nibble_level_2 = info.Nibble2; key.contentList.Add(item); } key.notContetFlag = (byte)(checkBox_notContent.IsChecked == true ? 1 : 0); key.serviceList.Clear(); foreach (ServiceItem info in listView_service.Items) { if (info.IsSelected == true) { key.serviceList.Add((Int64)info.ID); } } key.dateList.Clear(); foreach (DateItem info in listBox_date.Items) { key.dateList.Add(info.DateInfo); } key.notDateFlag = (byte)(checkBox_notDate.IsChecked == true ? 1 : 0); if (radioButton_free_2.IsChecked == true) { //無料 key.freeCAFlag = 1; } else if (radioButton_free_3.IsChecked == true) { //有料 key.freeCAFlag = 2; } else { key.freeCAFlag = 0; } key.chkRecEnd = (byte)(checkBox_chkRecEnd.IsChecked == true ? 1 : 0); key.chkRecDay = MenuUtil.MyToNumerical(textBox_chkRecDay, Convert.ToUInt16, ushort.MinValue); key.chkRecNoService = (byte)(radioButton_chkRecNoService2.IsChecked == true ? 1 : 0); key.chkDurationMin = MenuUtil.MyToNumerical(textBox_chkDurationMin, Convert.ToUInt16, ushort.MinValue); key.chkDurationMax = MenuUtil.MyToNumerical(textBox_chkDurationMax, Convert.ToUInt16, ushort.MinValue); } catch (Exception ex) { MessageBox.Show(ex.Message + "\r\n" + ex.StackTrace); } }
public void GetSearchKey(ref EpgSearchKeyInfo key) { try { if (checkBox_regExp.IsChecked == true) { key.regExpFlag = 1; key.aimaiFlag = 0; } else { key.regExpFlag = 0; if (checkBox_aimai.IsChecked == true) { key.aimaiFlag = 1; } else { key.aimaiFlag = 0; } } if (checkBox_titleOnly.IsChecked == true) { key.titleOnlyFlag = 1; } else { key.titleOnlyFlag = 0; } if (checkBox_keyDisabled.IsChecked == true) { key.andKey = (key.andKey.StartsWith("^!{999}") ? "" : "^!{999}") + key.andKey; } else { key.andKey = key.andKey.Substring(key.andKey.StartsWith("^!{999}") ? 7 : 0); } key.contentList.Clear(); foreach (ContentKindInfo info in listBox_content.Items) { EpgContentData item = new EpgContentData(); item.content_nibble_level_1 = info.Nibble1; item.content_nibble_level_2 = info.Nibble2; key.contentList.Add(item); } if (checkBox_notContent.IsChecked == true) { key.notContetFlag = 1; } else { key.notContetFlag = 0; } key.serviceList.Clear(); foreach (ServiceItem info in listView_service.Items) { if (info.IsSelected == true) { key.serviceList.Add((Int64)info.ID); } } key.dateList.Clear(); foreach (DateItem info in listBox_date.Items) { key.dateList.Add(info.DateInfo); } if (checkBox_notDate.IsChecked == true) { key.notDateFlag = 1; } else { key.notDateFlag = 0; } if (radioButton_free_2.IsChecked == true) { //無料 key.freeCAFlag = 1; } else if (radioButton_free_3.IsChecked == true) { //有料 key.freeCAFlag = 2; } else { key.freeCAFlag = 0; } if (checkBox_chkRecEnd.IsChecked == true) { key.chkRecEnd = 1; } else { key.chkRecEnd = 0; } key.chkRecDay = Convert.ToUInt16(textBox_chkRecDay.Text.ToString()); } catch (Exception ex) { MessageBox.Show(ex.Message + "\r\n" + ex.StackTrace); } }
public bool LoadEAAFile(String filePath) { bool ret = false; System.IO.StreamReader reader = null; try { reader = (new System.IO.StreamReader(filePath, System.Text.Encoding.Default)); while (reader.Peek() >= 0) { string buff = reader.ReadLine(); if (buff.IndexOf(";") == 0) { //コメント行 } else { AddKey = new EpgAutoAddData(); EpgSearchKeyInfo searchKey = new EpgSearchKeyInfo(); RecSettingData recSetKey = new RecSettingData(); string[] list = buff.Split('\t'); if (list.Length == 0) { continue; } try { searchKey.andKey = list[0]; searchKey.notKey = list[1]; searchKey.regExpFlag = Convert.ToByte(list[2]); searchKey.titleOnlyFlag = Convert.ToByte(list[3]); //対象ジャンル searchKey.contentList = new List<EpgContentData>(); string[] valBuff; if (list[4].Length > 0) { valBuff = list[4].Split(','); foreach (string val in valBuff) { UInt32 content = Convert.ToUInt32(val); EpgContentData addItem = new EpgContentData(); addItem.content_nibble_level_1 = (byte)((content & 0xFF000000) >> 24); addItem.content_nibble_level_2 = (byte)((content & 0x00FF0000) >> 16); addItem.user_nibble_1 = (byte)((content & 0x0000FF00) >> 8); addItem.user_nibble_2 = (byte)((content & 0x000000FF)); searchKey.contentList.Add(addItem); } } //対象期間 searchKey.dateList = new List<EpgSearchDateInfo>(); if (list[5].Length > 0) { valBuff = list[5].Split(','); foreach (string val in valBuff) { string[] dateBuff = val.Split('-'); EpgSearchDateInfo addItem = new EpgSearchDateInfo(); addItem.startDayOfWeek = Convert.ToByte(dateBuff[0]); UInt32 time = Convert.ToUInt32(dateBuff[1]); addItem.startHour = (UInt16)((time & 0xFFFF0000) >> 16); addItem.startMin = (UInt16)((time & 0x0000FFFF)); addItem.endDayOfWeek = Convert.ToByte(dateBuff[2]); time = Convert.ToUInt32(dateBuff[3]); addItem.endHour = (UInt16)((time & 0xFFFF0000) >> 16); addItem.endMin = (UInt16)((time & 0x0000FFFF)); searchKey.dateList.Add(addItem); } } //対象サービス searchKey.serviceList = new List<long>(); if (list[6].Length > 0) { valBuff = list[6].Split(','); foreach (string val in valBuff) { Int64 addItem = 0; addItem = Convert.ToInt64(val, 16); searchKey.serviceList.Add(addItem); } } searchKey.aimaiFlag = Convert.ToByte(list[7]); Settings.GetDefRecSetting(0, ref recSetKey); AddKey.searchInfo = searchKey; AddKey.recSetting = recSetKey; ret = true; } catch { } } } } catch { AddKey = null; } if( reader != null ){ reader.Close(); } return ret; }
public EpgSearchKeyInfo GetSearchKey() { var key = new EpgSearchKeyInfo(); key.andKey = comboBox_andKey.Text; key.notKey = comboBox_notKey.Text; key.regExpFlag = checkBox_regExp.IsChecked == true ? 1 : 0; key.aimaiFlag = (byte)(key.regExpFlag == 0 && checkBox_aimai.IsChecked == true ? 1 : 0); key.titleOnlyFlag = checkBox_titleOnly.IsChecked == true ? 1 : 0; uint durMin; uint durMax; if (uint.TryParse(textBox_chkDurationMin.Text, out durMin) && uint.TryParse(textBox_chkDurationMax.Text, out durMax) && (durMin > 0 || durMax > 0)) { key.andKey = "D!{" + ((10000 + Math.Min(durMin, 9999)) * 10000 + Math.Min(durMax, 9999)) + "}" + key.andKey; } if (checkBox_case.IsChecked == true) { key.andKey = "C!{999}" + key.andKey; } if (checkBox_keyDisabled.IsChecked == true) { key.andKey = "^!{999}" + key.andKey; } if (listBox_content.IsEnabled) { foreach (ContentKindInfo info in listBox_content.Items) { EpgContentData item = new EpgContentData(); item.content_nibble_level_1 = info.Nibble1; item.content_nibble_level_2 = info.Nibble2; key.contentList.Add(item); } } key.notContetFlag = (byte)(checkBox_notContent.IsChecked == true ? 1 : 0); if (listBox_date.IsEnabled) { foreach (Tuple <string, EpgSearchDateInfo> info in listBox_date.Items) { key.dateList.Add(info.Item2); } } key.notDateFlag = (byte)(checkBox_notDate.IsChecked == true ? 1 : 0); foreach (ServiceItem info in listView_service.Items) { if (info.IsSelected) { key.serviceList.Add((long)info.ID); } } key.freeCAFlag = (byte)Math.Min(Math.Max(comboBox_free.SelectedIndex, 0), 2); key.chkRecEnd = (byte)(checkBox_chkRecEnd.IsChecked == true ? 1 : 0); ushort.TryParse(textBox_chkRecDay.Text, out key.chkRecDay); if (checkBox_chkRecNoService.IsChecked == true) { key.chkRecDay = (ushort)(key.chkRecDay % 10000 + 40000); } return(key); }
public bool LoadEAAFile(String filePath) { bool ret = false; System.IO.StreamReader reader = null; try { reader = (new System.IO.StreamReader(filePath, System.Text.Encoding.Default)); while (reader.Peek() >= 0) { string buff = reader.ReadLine(); if (buff.IndexOf(";") == 0) { //コメント行 } else { AddKey = new EpgAutoAddData(); EpgSearchKeyInfo searchKey = new EpgSearchKeyInfo(); RecSettingData recSetKey = new RecSettingData(); string[] list = buff.Split('\t'); if (list.Length == 0) { continue; } try { searchKey.andKey = list[0]; searchKey.notKey = list[1]; searchKey.regExpFlag = Convert.ToByte(list[2]); searchKey.titleOnlyFlag = Convert.ToByte(list[3]); //対象ジャンル searchKey.contentList = new List <EpgContentData>(); string[] valBuff; if (list[4].Length > 0) { valBuff = list[4].Split(','); foreach (string val in valBuff) { UInt32 content = Convert.ToUInt32(val); EpgContentData addItem = new EpgContentData(); addItem.content_nibble_level_1 = (byte)((content & 0xFF000000) >> 24); addItem.content_nibble_level_2 = (byte)((content & 0x00FF0000) >> 16); addItem.user_nibble_1 = (byte)((content & 0x0000FF00) >> 8); addItem.user_nibble_2 = (byte)((content & 0x000000FF)); searchKey.contentList.Add(addItem); } } //対象期間 searchKey.dateList = new List <EpgSearchDateInfo>(); if (list[5].Length > 0) { valBuff = list[5].Split(','); foreach (string val in valBuff) { string[] dateBuff = val.Split('-'); EpgSearchDateInfo addItem = new EpgSearchDateInfo(); addItem.startDayOfWeek = Convert.ToByte(dateBuff[0]); UInt32 time = Convert.ToUInt32(dateBuff[1]); addItem.startHour = (UInt16)((time & 0xFFFF0000) >> 16); addItem.startMin = (UInt16)((time & 0x0000FFFF)); addItem.endDayOfWeek = Convert.ToByte(dateBuff[2]); time = Convert.ToUInt32(dateBuff[3]); addItem.endHour = (UInt16)((time & 0xFFFF0000) >> 16); addItem.endMin = (UInt16)((time & 0x0000FFFF)); searchKey.dateList.Add(addItem); } } //対象サービス searchKey.serviceList = new List <UInt64>(); if (list[6].Length > 0) { valBuff = list[6].Split(','); foreach (string val in valBuff) { UInt64 addItem = 0; addItem = Convert.ToUInt64(val, 16); searchKey.serviceList.Add(addItem); } } searchKey.aimaiFlag = Convert.ToByte(list[7]); Settings.GetDefRecSetting(0, ref recSetKey); AddKey.searchInfo = searchKey; AddKey.recSetting = recSetKey; ret = true; } catch { } } } } catch { AddKey = null; } if (reader != null) { reader.Close(); } return(ret); }
public static void GetDefSearchSetting(ref EpgSearchKeyInfo defKey) { if (Settings.Instance.SearchKeyRegExp == true) { defKey.regExpFlag = 1; } if (Settings.Instance.SearchKeyAimaiFlag == true) { defKey.aimaiFlag = 1; } if (Settings.Instance.SearchKeyTitleOnly == true) { defKey.titleOnlyFlag = 1; } if (Settings.Instance.SearchKeyNotContent == true) { defKey.notContetFlag = 1; } if (Settings.Instance.SearchKeyNotDate == true) { defKey.notDateFlag = 1; } foreach (ContentKindInfo info in Settings.Instance.SearchKeyContentList) { EpgContentData item = new EpgContentData(); item.content_nibble_level_1 = info.Nibble1; item.content_nibble_level_2 = info.Nibble2; defKey.contentList.Add(item); } foreach (DateItem info in Settings.Instance.SearchKeyDateItemList) { defKey.dateList.Add(info.DateInfo); } foreach (Int64 info in Settings.Instance.SearchKeyServiceList) { defKey.serviceList.Add(info); } defKey.freeCAFlag = Settings.Instance.SearchKeyFreeCA; defKey.chkRecEnd = Settings.Instance.SearchKeyChkRecEnd; defKey.chkRecDay = Settings.Instance.SearchKeyChkRecDay; }