public SetEpgView() { InitializeComponent(); try { textBox_mouse_scroll.Text = Settings.Instance.ScrollSize.ToString(); textBox_service_width.Text = Settings.Instance.ServiceWidth.ToString(); textBox_minHeight.Text = Settings.Instance.MinHeight.ToString(); textBox_dragScroll.Text = Settings.Instance.DragScroll.ToString(); textBox_minimumHeight.Text = Settings.Instance.MinimumHeight.ToString(); checkBox_epg_popup.IsChecked = Settings.Instance.EpgPopup; checkBox_epg_popup_resOnly.IsEnabled = Settings.Instance.EpgPopup; checkBox_epg_popup_resOnly.IsChecked = Settings.Instance.EpgPopupResOnly; checkBox_title_indent.IsChecked = Settings.Instance.EpgTitleIndent; checkBox_singleOpen.IsChecked = Settings.Instance.EpgInfoSingleClick; checkBox_scrollAuto.IsChecked = Settings.Instance.MouseScrollAuto; checkBox_gradation.IsChecked = Settings.Instance.EpgGradation; checkBox_gradationHeader.IsChecked = Settings.Instance.EpgGradationHeader; checkBox_openInfo.IsChecked = (Settings.Instance.EpgInfoOpenMode != 0); checkBox_displayNotifyChange.IsChecked = Settings.Instance.DisplayNotifyEpgChange; checkBox_reserveBackground.IsChecked = Settings.Instance.ReserveRectBackground; textBox_tuner_mouse_scroll.Text = Settings.Instance.TunerScrollSize.ToString(); textBox_tuner_width.Text = Settings.Instance.TunerWidth.ToString(); textBox_tuner_minHeight.Text = Settings.Instance.TunerMinHeight.ToString(); textBox_tunerDdragScroll.Text = Settings.Instance.TunerDragScroll.ToString(); textBox_tunerMinLineHeight.Text = Settings.Instance.TunerMinimumLine.ToString(); checkBox_tuner_popup.IsChecked = Settings.Instance.TunerPopup; checkBox_tuner_popup_recInfo.IsEnabled = Settings.Instance.TunerPopup; checkBox_tuner_popup_recInfo.IsChecked = Settings.Instance.TunerPopupRecinfo; checkBox_tuner_title_indent.IsChecked = Settings.Instance.TunerTitleIndent; checkBox_tunerSingleOpen.IsChecked = Settings.Instance.TunerInfoSingleClick; checkBox_tuner_scrollAuto.IsChecked = Settings.Instance.TunerMouseScrollAuto; checkBox_tuner_service_nowrap.IsChecked = Settings.Instance.TunerServiceNoWrap; checkBox_tunerColorModeUse.IsChecked = Settings.Instance.TunerColorModeUse; comboBox_tunerFontColorService.IsEnabled = !Settings.Instance.TunerColorModeUse; button_tunerFontCustColorService.IsEnabled = !Settings.Instance.TunerColorModeUse; checkBox_tuner_display_offres.IsChecked = Settings.Instance.TunerDisplayOffReserve; bx.TargetBox = this.listBox_tab; button_tab_del.Click += new RoutedEventHandler(bx.button_del_Click); button_tab_up.Click += new RoutedEventHandler(bx.button_up_Click); button_tab_down.Click += new RoutedEventHandler(bx.button_down_Click); radioButton_1_def.IsChecked = (Settings.Instance.UseCustomEpgView == false); radioButton_1_cust.IsChecked = (Settings.Instance.UseCustomEpgView != false); Settings.Instance.CustomEpgTabList.ForEach(info => listBox_tab.Items.Add(info)); if (listBox_tab.Items.Count > 0) listBox_tab.SelectedIndex = 0; XmlLanguage FLanguage = XmlLanguage.GetLanguage("ja-JP"); List<string> fontList = Fonts.SystemFontFamilies .Where(f => f.FamilyNames.ContainsKey(FLanguage) == true) .Select(f => f.FamilyNames[FLanguage]).ToList(); var setCmboFont = new Action<string, ComboBox>((name, cmb) => { cmb.ItemsSource = fontList; cmb.SelectedItem = name; if (cmb.SelectedItem == null) cmb.SelectedIndex = 0; }); setCmboFont(Settings.Instance.FontNameTitle, comboBox_fontTitle); setCmboFont(Settings.Instance.FontName, comboBox_font); setCmboFont(Settings.Instance.TunerFontNameService, comboBox_fontTunerService); setCmboFont(Settings.Instance.TunerFontName, comboBox_fontTuner); textBox_fontSize.Text = Settings.Instance.FontSize.ToString(); textBox_fontSizeTitle.Text = Settings.Instance.FontSizeTitle.ToString(); checkBox_fontBoldTitle.IsChecked = Settings.Instance.FontBoldTitle; textBox_fontTunerSize.Text = Settings.Instance.TunerFontSize.ToString(); textBox_fontTunerSizeService.Text = Settings.Instance.TunerFontSizeService.ToString(); checkBox_fontTunerBoldService.IsChecked = Settings.Instance.TunerFontBoldService; var colorReference = ColorDef.ColorNames.ToDictionary (name => name, name => new ColorReferenceViewItem(name, ColorDef.Instance.ColorTable[name])); colorReference["カスタム"] = new ColorReferenceViewItem("カスタム", this.Resources["HatchBrush"] as VisualBrush); var setComboColor1 = new Action<string, ComboBox>((name, cmb) => { cmb.ItemsSource = colorReference.Values; try { cmb.SelectedItem = colorReference[name]; } catch { cmb.SelectedItem = colorReference["カスタム"]; } }); var setComboColors = new Action<List<string>, Panel>((list, pnl) => { foreach (var cmb in pnl.Children.OfType<ComboBox>()) { int idx = int.Parse((string)cmb.Tag); setComboColor1(list[idx], cmb); } }); //番組表のフォント色と予約枠色はSettingsが個別のため個別処理。 //これをまとめて出来るようにSettingsを変えると以前の設定が消える。 setComboColor1(Settings.Instance.TitleColor1, comboBox_colorTitle1); setComboColor1(Settings.Instance.TitleColor2, comboBox_colorTitle2); setComboColors(Settings.Instance.ContentColorList, grid_EpgColors); setComboColor1(Settings.Instance.ReserveRectColorNormal, comboBox_reserveNormal); setComboColor1(Settings.Instance.ReserveRectColorNo, comboBox_reserveNo); setComboColor1(Settings.Instance.ReserveRectColorNoTuner, comboBox_reserveNoTuner); setComboColor1(Settings.Instance.ReserveRectColorWarning, comboBox_reserveWarning); setComboColor1(Settings.Instance.ReserveRectColorAutoAddMissing, comboBox_reserveAutoAddMissing); setComboColors(Settings.Instance.EpgEtcColors, grid_EpgTimeColors); setComboColors(Settings.Instance.EpgEtcColors, grid_EpgEtcColors); setComboColors(Settings.Instance.TunerServiceColors, grid_TunerFontColor); setComboColors(Settings.Instance.TunerServiceColors, grid_TunerColors); var setButtonColor1 = new Action<uint, Button>((clr, btn) => btn.Background = new SolidColorBrush(ColorDef.FromUInt(clr))); var setButtonColors = new Action<List<uint>, Panel>((list, pnl) => { foreach (var btn in pnl.Children.OfType<Button>()) { int idx = int.Parse((string)btn.Tag); setButtonColor1(list[idx], btn); } }); setButtonColor1(Settings.Instance.TitleCustColor1, button_colorTitle1); setButtonColor1(Settings.Instance.TitleCustColor2, button_colorTitle2); setButtonColors(Settings.Instance.ContentCustColorList, grid_EpgColors); setButtonColors(Settings.Instance.ContentCustColorList, grid_EpgColorsReserve); setButtonColors(Settings.Instance.EpgEtcCustColors, grid_EpgTimeColors); setButtonColors(Settings.Instance.EpgEtcCustColors, grid_EpgEtcColors); setButtonColors(Settings.Instance.TunerServiceCustColors, grid_TunerFontColor); setButtonColors(Settings.Instance.TunerServiceCustColors, grid_TunerColors); //録画済み一覧画面 textBox_dropErrIgnore.Text = Settings.Instance.RecInfoDropErrIgnore.ToString(); textBox_dropWrnIgnore.Text = Settings.Instance.RecInfoDropWrnIgnore.ToString(); textBox_scrambleIgnore.Text = Settings.Instance.RecInfoScrambleIgnore.ToString(); checkBox_playDClick.IsChecked = Settings.Instance.PlayDClick; checkBox_recinfo_errCritical.IsChecked = Settings.Instance.RecinfoErrCriticalDrops; checkBox_recNoYear.IsChecked = Settings.Instance.RecInfoNoYear; checkBox_recNoSecond.IsChecked = Settings.Instance.RecInfoNoSecond; checkBox_recNoDurSecond.IsChecked = Settings.Instance.RecInfoNoDurSecond; setComboColors(Settings.Instance.RecEndColors, grid_RecInfoBackColors); setButtonColors(Settings.Instance.RecEndCustColors, grid_RecInfoBackColors); //予約一覧画面 this.ctxmSetInfo = Settings.Instance.MenuSet.Clone(); checkBox_displayAutoAddMissing.IsChecked = Settings.Instance.DisplayReserveAutoAddMissing; checkBox_resNoYear.IsChecked = Settings.Instance.ResInfoNoYear; checkBox_resNoSecond.IsChecked = Settings.Instance.ResInfoNoSecond; checkBox_resNoDurSecond.IsChecked = Settings.Instance.ResInfoNoDurSecond; setComboColor1(Settings.Instance.ListDefColor, cmb_ListDefFontColor); setComboColors(Settings.Instance.RecModeFontColors, grid_ReserveRecModeColors); setComboColors(Settings.Instance.ResBackColors, grid_ReserveBackColors); setComboColors(Settings.Instance.StatColors, grid_StatColors); setButtonColor1(Settings.Instance.ListDefCustColor, btn_ListDefFontColor); setButtonColors(Settings.Instance.RecModeFontCustColors, grid_ReserveRecModeColors); setButtonColors(Settings.Instance.ResBackCustColors, grid_ReserveBackColors); setButtonColors(Settings.Instance.StatCustColors, grid_StatColors); textBox_DisplayJumpTime.Text = Settings.Instance.DisplayNotifyJumpTime.ToString(); } catch (Exception ex) { MessageBox.Show(ex.Message + "\r\n" + ex.StackTrace); } }
public SetEpgView() { InitializeComponent(); try { textBox_mouse_scroll.Text = Settings.Instance.ScrollSize.ToString(); textBox_service_width.Text = Settings.Instance.ServiceWidth.ToString(); textBox_minHeight.Text = Settings.Instance.MinHeight.ToString(); textBox_dragScroll.Text = Settings.Instance.DragScroll.ToString(); textBox_minimumHeight.Text = Settings.Instance.MinimumHeight.ToString(); checkBox_epg_popup.IsChecked = Settings.Instance.EpgPopup; checkBox_epg_popup_resOnly.IsEnabled = Settings.Instance.EpgPopup; checkBox_epg_popup_resOnly.IsChecked = Settings.Instance.EpgPopupResOnly; checkBox_title_indent.IsChecked = Settings.Instance.EpgTitleIndent; checkBox_singleOpen.IsChecked = Settings.Instance.EpgInfoSingleClick; checkBox_scrollAuto.IsChecked = Settings.Instance.MouseScrollAuto; checkBox_gradation.IsChecked = Settings.Instance.EpgGradation; checkBox_gradationHeader.IsChecked = Settings.Instance.EpgGradationHeader; checkBox_openInfo.IsChecked = (Settings.Instance.EpgInfoOpenMode != 0); checkBox_displayNotifyChange.IsChecked = Settings.Instance.DisplayNotifyEpgChange; checkBox_reserveBackground.IsChecked = Settings.Instance.ReserveRectBackground; textBox_tuner_mouse_scroll.Text = Settings.Instance.TunerScrollSize.ToString(); textBox_tuner_width.Text = Settings.Instance.TunerWidth.ToString(); textBox_tuner_minHeight.Text = Settings.Instance.TunerMinHeight.ToString(); textBox_tunerDdragScroll.Text = Settings.Instance.TunerDragScroll.ToString(); textBox_tunerMinLineHeight.Text = Settings.Instance.TunerMinimumLine.ToString(); checkBox_tuner_popup.IsChecked = Settings.Instance.TunerPopup; checkBox_tuner_popup_recInfo.IsEnabled = Settings.Instance.TunerPopup; checkBox_tuner_popup_recInfo.IsChecked = Settings.Instance.TunerPopupRecinfo; checkBox_tuner_title_indent.IsChecked = Settings.Instance.TunerTitleIndent; checkBox_tunerSingleOpen.IsChecked = Settings.Instance.TunerInfoSingleClick; checkBox_tuner_scrollAuto.IsChecked = Settings.Instance.TunerMouseScrollAuto; checkBox_tuner_service_nowrap.IsChecked = Settings.Instance.TunerServiceNoWrap; checkBox_tunerColorModeUse.IsChecked = Settings.Instance.TunerColorModeUse; comboBox_tunerFontColorService.IsEnabled = !Settings.Instance.TunerColorModeUse; button_tunerFontCustColorService.IsEnabled = !Settings.Instance.TunerColorModeUse; checkBox_tuner_display_offres.IsChecked = Settings.Instance.TunerDisplayOffReserve; var bx = new BoxExchangeEditor(null, this.listBox_tab, true, true, true); bx.targetBoxAllowDoubleClick(bx.TargetBox, (sender, e) => button_tab_chg.RaiseEvent(new RoutedEventArgs(Button.ClickEvent))); button_tab_del.Click += new RoutedEventHandler(bx.button_Delete_Click); button_tab_up.Click += new RoutedEventHandler(bx.button_Up_Click); button_tab_down.Click += new RoutedEventHandler(bx.button_Down_Click); button_tab_top.Click += new RoutedEventHandler(bx.button_Top_Click); button_tab_bottom.Click += new RoutedEventHandler(bx.button_Bottom_Click); radioButton_1_def.IsChecked = (Settings.Instance.UseCustomEpgView == false); radioButton_1_cust.IsChecked = (Settings.Instance.UseCustomEpgView != false); listBox_tab.Items.AddItems(Settings.Instance.CustomEpgTabList); if (listBox_tab.Items.Count > 0) { listBox_tab.SelectedIndex = 0; } XmlLanguage FLanguage = XmlLanguage.GetLanguage("ja-JP"); List <string> fontList = Fonts.SystemFontFamilies .Where(f => f.FamilyNames.ContainsKey(FLanguage) == true) .Select(f => f.FamilyNames[FLanguage]).ToList(); var setCmboFont = new Action <string, ComboBox>((name, cmb) => { cmb.ItemsSource = fontList; cmb.SelectedItem = name; if (cmb.SelectedItem == null) { cmb.SelectedIndex = 0; } }); setCmboFont(Settings.Instance.FontNameTitle, comboBox_fontTitle); setCmboFont(Settings.Instance.FontName, comboBox_font); setCmboFont(Settings.Instance.TunerFontNameService, comboBox_fontTunerService); setCmboFont(Settings.Instance.TunerFontName, comboBox_fontTuner); textBox_fontSize.Text = Settings.Instance.FontSize.ToString(); textBox_fontSizeTitle.Text = Settings.Instance.FontSizeTitle.ToString(); checkBox_fontBoldTitle.IsChecked = Settings.Instance.FontBoldTitle; textBox_fontTunerSize.Text = Settings.Instance.TunerFontSize.ToString(); textBox_fontTunerSizeService.Text = Settings.Instance.TunerFontSizeService.ToString(); checkBox_fontTunerBoldService.IsChecked = Settings.Instance.TunerFontBoldService; var colorReference = ColorDef.ColorTable.ToDictionary (item => item.Key, item => new ColorReferenceViewItem(item.Key, item.Value)); colorReference["カスタム"] = new ColorReferenceViewItem("カスタム", this.Resources["HatchBrush"] as VisualBrush); var setComboColor1 = new Action <string, ComboBox>((name, cmb) => { cmb.ItemsSource = colorReference.Values; cmb.SelectedItem = colorReference.ContainsKey(name) ? colorReference[name] : colorReference["カスタム"]; }); var setButtonColor1 = new Action <uint, Button>((clr, btn) => btn.Background = new SolidColorBrush(ColorDef.FromUInt(clr))); var setColors = new Action <UIElement, List <string>, List <uint> >((ui, stockColors, custColors) => { List <UIElement> uiList = new List <UIElement>(); uiList.Add(ui); for (int n = 0; n < uiList.Count; n++) { foreach (var child in LogicalTreeHelper.GetChildren(uiList[n])) { if (child is Control) { int index = int.Parse((string)(child as Control).Tag ?? "-1"); if (index >= 0) { if (child is ComboBox && index < stockColors.Count) { setComboColor1(stockColors[index], child as ComboBox); } else if (child is Button && index < custColors.Count) { setButtonColor1(custColors[index], child as Button); } } } else if (child is UIElement) { uiList.Add(child as UIElement); } } } }); //番組表のフォント色と予約枠色はSettingsが個別のため個別処理。 //これをまとめて出来るようにSettingsを変えると以前の設定が消える。 // [番組表] - [基本] setComboColor1(Settings.Instance.TitleColor1, comboBox_colorTitle1); setButtonColor1(Settings.Instance.TitleCustColor1, button_colorTitle1); setComboColor1(Settings.Instance.TitleColor2, comboBox_colorTitle2); setButtonColor1(Settings.Instance.TitleCustColor2, button_colorTitle2); // [番組表] - [色1] setColors(groupEpgColors, Settings.Instance.ContentColorList, Settings.Instance.ContentCustColorList); setComboColor1(Settings.Instance.ReserveRectColorNormal, comboBox_reserveNormal); setComboColor1(Settings.Instance.ReserveRectColorNo, comboBox_reserveNo); setComboColor1(Settings.Instance.ReserveRectColorNoTuner, comboBox_reserveNoTuner); setComboColor1(Settings.Instance.ReserveRectColorWarning, comboBox_reserveWarning); setComboColor1(Settings.Instance.ReserveRectColorAutoAddMissing, comboBox_reserveAutoAddMissing); setColors(groupEpgColorsReserve, null, Settings.Instance.ContentCustColorList); // [番組表] - [色2] setColors(groupEpgTimeColors, Settings.Instance.EpgEtcColors, Settings.Instance.EpgEtcCustColors); setColors(groupEpgEtcColors, Settings.Instance.EpgEtcColors, Settings.Instance.EpgEtcCustColors); // [使用予定チューナー] - [基本] setColors(groupTunerFontColor, Settings.Instance.TunerServiceColors, Settings.Instance.TunerServiceCustColors); // [使用予定チューナー] - [色] setColors(groupTunerColors, Settings.Instance.TunerServiceColors, Settings.Instance.TunerServiceCustColors); // [録画済み一覧] checkBox_playDClick.IsChecked = Settings.Instance.PlayDClick; checkBox_recNoYear.IsChecked = Settings.Instance.RecInfoNoYear; checkBox_recNoSecond.IsChecked = Settings.Instance.RecInfoNoSecond; checkBox_recNoDurSecond.IsChecked = Settings.Instance.RecInfoNoDurSecond; checkBox_ChacheOn.IsChecked = Settings.Instance.RecInfoExtraDataCache; checkBox_CacheOptimize.IsChecked = Settings.Instance.RecInfoExtraDataCacheOptimize; checkBox_CacheKeepConnect.IsChecked = Settings.Instance.RecInfoExtraDataCacheKeepConnect; if (CommonManager.Instance.NWMode == false) { checkBox_CacheKeepConnect.IsEnabled = false;//{Binding}を破棄しているので注意 } textBox_dropErrIgnore.Text = Settings.Instance.RecInfoDropErrIgnore.ToString(); textBox_dropWrnIgnore.Text = Settings.Instance.RecInfoDropWrnIgnore.ToString(); textBox_scrambleIgnore.Text = Settings.Instance.RecInfoScrambleIgnore.ToString(); checkBox_recinfo_errCritical.IsChecked = Settings.Instance.RecinfoErrCriticalDrops; setColors(groupRecInfoBackColors, Settings.Instance.RecEndColors, Settings.Instance.RecEndCustColors); // [予約一覧・共通] - [基本] this.ctxmSetInfo = Settings.Instance.MenuSet.Clone(); checkBox_displayAutoAddMissing.IsChecked = Settings.Instance.DisplayReserveAutoAddMissing; textBox_DisplayJumpTime.Text = Settings.Instance.DisplayNotifyJumpTime.ToString(); checkBox_resNoYear.IsChecked = Settings.Instance.ResInfoNoYear; checkBox_resNoSecond.IsChecked = Settings.Instance.ResInfoNoSecond; checkBox_resNoDurSecond.IsChecked = Settings.Instance.ResInfoNoDurSecond; checkBox_LaterTimeUse.IsChecked = Settings.Instance.LaterTimeUse; textBox_LaterTimeHour.Text = (Settings.Instance.LaterTimeHour + 24).ToString(); checkBox_displayPresetOnSearch.IsChecked = Settings.Instance.DisplayPresetOnSearch; checkBox_nekopandaToolTip.IsChecked = Settings.Instance.RecItemToolTip; checkBox_displayStatus.IsChecked = Settings.Instance.DisplayStatus; checkBox_displayStatusNotify.IsChecked = Settings.Instance.DisplayStatusNotify; checkBox_IsVisibleReserveView.IsChecked = Settings.Instance.IsVisibleReserveView; checkBox_IsVisibleRecInfoView.IsChecked = Settings.Instance.IsVisibleRecInfoView; checkBox_IsVisibleAutoAddView.IsChecked = Settings.Instance.IsVisibleAutoAddView; checkBox_IsVisibleAutoAddViewMoveOnly.IsChecked = Settings.Instance.IsVisibleAutoAddViewMoveOnly; foreach (var item in new Dictionary <object, string> { { CtxmCode.ReserveView, "予約一覧" }, { CtxmCode.TunerReserveView, "使用予定チューナ" }, { CtxmCode.RecInfoView, "録画済み一案" }, { CtxmCode.EpgAutoAddView, "キーワード予約登録" }, { CtxmCode.ManualAutoAddView, "プログラム予約登録" }, { CtxmCode.EpgView, "番組表" } }) { wrapPanel_StartTab.Children.Add(new RadioButton { Tag = item.Key, Content = item.Value }); } var rbtn = wrapPanel_StartTab.Children.OfType <RadioButton>() .FirstOrDefault(item => item.Tag as CtxmCode? == Settings.Instance.StartTab); if (rbtn != null) { rbtn.IsChecked = true; } foreach (var item in new Dictionary <object, string> { { Dock.Bottom, "下" }, { Dock.Top, "上" }, { Dock.Left, "左" }, { Dock.Right, "右" } }) { wrapPanel_MainViewButtonsDock.Children.Add(new RadioButton { Tag = item.Key, Content = item.Value }); } rbtn = wrapPanel_MainViewButtonsDock.Children.OfType <RadioButton>() .FirstOrDefault(item => item.Tag as Dock? == Settings.Instance.MainViewButtonsDock); if (rbtn != null) { rbtn.IsChecked = true; } InitializeStyleList(); // [予約一覧・共通] - [色] setComboColor1(Settings.Instance.ListDefColor, cmb_ListDefFontColor); setButtonColor1(Settings.Instance.ListDefCustColor, btn_ListDefFontColor); setColors(groupReserveRecModeColors, Settings.Instance.RecModeFontColors, Settings.Instance.RecModeFontCustColors); setColors(groupReserveBackColors, Settings.Instance.ResBackColors, Settings.Instance.ResBackCustColors); setColors(groupStatColors, Settings.Instance.StatColors, Settings.Instance.StatCustColors); // [予約簡易表示] textBox_iw_refresh_interval.Text = Settings.Instance.InfoWindowRefreshInterval.ToString(); radioButton_iw_based_on_bcst.IsChecked = Settings.Instance.InfoWindowBasedOnBroadcast; radioButton_iw_based_on_rec.IsChecked = !Settings.Instance.InfoWindowBasedOnBroadcast; switch (Settings.Instance.InfoWindowItemFilterLevel) { default: radioButton_All.IsChecked = true; break; case 1: radioButton_Level1.IsChecked = true; break; case 2: radioButton_Level2.IsChecked = true; break; case 3: radioButton_Level3.IsChecked = true; break; case int.MaxValue: radioButton_TopN.IsChecked = true; break; } switch (Settings.Instance.InfoWindowItemProgressBarType) { default: radioButton_ProgressBarOff.IsChecked = true; break; case 1: radioButton_ProgressBarType1.IsChecked = true; break; case 2: radioButton_ProgressBarType2.IsChecked = true; break; } setColors(groupInfoWinItemProgressBarColors, Settings.Instance.InfoWindowItemProgressBarColors, Settings.Instance.InfoWindowItemProgressBarCustColors); checkBox_bgTransparent.IsChecked = Settings.Instance.InfoWindowItemProgressBarTransparent; textBox_TopN.Text = Settings.Instance.InfoWindowItemTopN.ToString(); textBox_iw_item_level1.Text = (Settings.Instance.InfoWindowItemLevel1Seconds / 60.0).ToString(); textBox_iw_item_level2.Text = (Settings.Instance.InfoWindowItemLevel2Seconds / 60.0).ToString(); textBox_iw_item_level3.Text = (Settings.Instance.InfoWindowItemLevel3Seconds / 60.0).ToString(); setColors(groupInfoWinItemBgColors, Settings.Instance.InfoWindowItemBgColors, Settings.Instance.InfoWindowItemBgCustColors); } catch (Exception ex) { MessageBox.Show(ex.Message + "\r\n" + ex.StackTrace); } }
public SetEpgView() { InitializeComponent(); try { textBox_mouse_scroll.Text = Settings.Instance.ScrollSize.ToString(); textBox_service_width.Text = Settings.Instance.ServiceWidth.ToString(); textBox_minHeight.Text = Settings.Instance.MinHeight.ToString(); textBox_dragScroll.Text = Settings.Instance.DragScroll.ToString(); textBox_minimumHeight.Text = Settings.Instance.MinimumHeight.ToString(); checkBox_epg_popup.IsChecked = Settings.Instance.EpgPopup; checkBox_epg_popup_resOnly.IsEnabled = Settings.Instance.EpgPopup; checkBox_epg_popup_resOnly.IsChecked = Settings.Instance.EpgPopupResOnly; checkBox_title_indent.IsChecked = Settings.Instance.EpgTitleIndent; checkBox_singleOpen.IsChecked = Settings.Instance.EpgInfoSingleClick; checkBox_scrollAuto.IsChecked = Settings.Instance.MouseScrollAuto; checkBox_gradation.IsChecked = Settings.Instance.EpgGradation; checkBox_gradationHeader.IsChecked = Settings.Instance.EpgGradationHeader; checkBox_openInfo.IsChecked = (Settings.Instance.EpgInfoOpenMode != 0); checkBox_displayNotifyChange.IsChecked = Settings.Instance.DisplayNotifyEpgChange; checkBox_reserveBackground.IsChecked = Settings.Instance.ReserveRectBackground; textBox_tuner_mouse_scroll.Text = Settings.Instance.TunerScrollSize.ToString(); textBox_tuner_width.Text = Settings.Instance.TunerWidth.ToString(); textBox_tuner_minHeight.Text = Settings.Instance.TunerMinHeight.ToString(); textBox_tunerDdragScroll.Text = Settings.Instance.TunerDragScroll.ToString(); textBox_tunerMinLineHeight.Text = Settings.Instance.TunerMinimumLine.ToString(); checkBox_tuner_popup.IsChecked = Settings.Instance.TunerPopup; checkBox_tuner_popup_recInfo.IsEnabled = Settings.Instance.TunerPopup; checkBox_tuner_popup_recInfo.IsChecked = Settings.Instance.TunerPopupRecinfo; checkBox_tuner_title_indent.IsChecked = Settings.Instance.TunerTitleIndent; checkBox_tunerSingleOpen.IsChecked = Settings.Instance.TunerInfoSingleClick; checkBox_tuner_scrollAuto.IsChecked = Settings.Instance.TunerMouseScrollAuto; checkBox_tuner_service_nowrap.IsChecked = Settings.Instance.TunerServiceNoWrap; checkBox_tunerColorModeUse.IsChecked = Settings.Instance.TunerColorModeUse; comboBox_tunerFontColorService.IsEnabled = !Settings.Instance.TunerColorModeUse; button_tunerFontCustColorService.IsEnabled = !Settings.Instance.TunerColorModeUse; checkBox_tuner_display_offres.IsChecked = Settings.Instance.TunerDisplayOffReserve; var bx = new BoxExchangeEditor(null, this.listBox_tab, true, true, true); bx.targetBoxAllowDoubleClick(bx.TargetBox, (sender, e) => button_tab_chg.RaiseEvent(new RoutedEventArgs(Button.ClickEvent))); button_tab_del.Click += new RoutedEventHandler(bx.button_Delete_Click); button_tab_up.Click += new RoutedEventHandler(bx.button_Up_Click); button_tab_down.Click += new RoutedEventHandler(bx.button_Down_Click); button_tab_top.Click += new RoutedEventHandler(bx.button_Top_Click); button_tab_bottom.Click += new RoutedEventHandler(bx.button_Bottom_Click); radioButton_1_def.IsChecked = (Settings.Instance.UseCustomEpgView == false); radioButton_1_cust.IsChecked = (Settings.Instance.UseCustomEpgView != false); listBox_tab.Items.AddItems(Settings.Instance.CustomEpgTabList); if (listBox_tab.Items.Count > 0) listBox_tab.SelectedIndex = 0; XmlLanguage FLanguage = XmlLanguage.GetLanguage("ja-JP"); List<string> fontList = Fonts.SystemFontFamilies .Where(f => f.FamilyNames.ContainsKey(FLanguage) == true) .Select(f => f.FamilyNames[FLanguage]).ToList(); var setCmboFont = new Action<string, ComboBox>((name, cmb) => { cmb.ItemsSource = fontList; cmb.SelectedItem = name; if (cmb.SelectedItem == null) cmb.SelectedIndex = 0; }); setCmboFont(Settings.Instance.FontNameTitle, comboBox_fontTitle); setCmboFont(Settings.Instance.FontName, comboBox_font); setCmboFont(Settings.Instance.TunerFontNameService, comboBox_fontTunerService); setCmboFont(Settings.Instance.TunerFontName, comboBox_fontTuner); textBox_fontSize.Text = Settings.Instance.FontSize.ToString(); textBox_fontSizeTitle.Text = Settings.Instance.FontSizeTitle.ToString(); checkBox_fontBoldTitle.IsChecked = Settings.Instance.FontBoldTitle; textBox_fontTunerSize.Text = Settings.Instance.TunerFontSize.ToString(); textBox_fontTunerSizeService.Text = Settings.Instance.TunerFontSizeService.ToString(); checkBox_fontTunerBoldService.IsChecked = Settings.Instance.TunerFontBoldService; var colorReference = ColorDef.ColorTable.ToDictionary (item => item.Key, item => new ColorReferenceViewItem(item.Key, item.Value)); colorReference["カスタム"] = new ColorReferenceViewItem("カスタム", this.Resources["HatchBrush"] as VisualBrush); var setComboColor1 = new Action<string, ComboBox>((name, cmb) => { cmb.ItemsSource = colorReference.Values; cmb.SelectedItem = colorReference.ContainsKey(name) ? colorReference[name] : colorReference["カスタム"]; }); var setButtonColor1 = new Action<uint, Button>((clr, btn) => btn.Background = new SolidColorBrush(ColorDef.FromUInt(clr))); var setColors = new Action<UIElement, List<string>, List<uint>>((ui, stockColors, custColors) => { List<UIElement> uiList = new List<UIElement>(); uiList.Add(ui); for (int n = 0; n < uiList.Count; n++) { foreach (var child in LogicalTreeHelper.GetChildren(uiList[n])) { if (child is Control) { int index = int.Parse((string)(child as Control).Tag ?? "-1"); if (index >= 0) { if (child is ComboBox && index < stockColors.Count) { setComboColor1(stockColors[index], child as ComboBox); } else if (child is Button && index < custColors.Count) { setButtonColor1(custColors[index], child as Button); } } } else if (child is UIElement) { uiList.Add(child as UIElement); } } } }); //番組表のフォント色と予約枠色はSettingsが個別のため個別処理。 //これをまとめて出来るようにSettingsを変えると以前の設定が消える。 // [番組表] - [基本] setComboColor1(Settings.Instance.TitleColor1, comboBox_colorTitle1); setButtonColor1(Settings.Instance.TitleCustColor1, button_colorTitle1); setComboColor1(Settings.Instance.TitleColor2, comboBox_colorTitle2); setButtonColor1(Settings.Instance.TitleCustColor2, button_colorTitle2); // [番組表] - [色1] setColors(groupEpgColors, Settings.Instance.ContentColorList, Settings.Instance.ContentCustColorList); setComboColor1(Settings.Instance.ReserveRectColorNormal, comboBox_reserveNormal); setComboColor1(Settings.Instance.ReserveRectColorNo, comboBox_reserveNo); setComboColor1(Settings.Instance.ReserveRectColorNoTuner, comboBox_reserveNoTuner); setComboColor1(Settings.Instance.ReserveRectColorWarning, comboBox_reserveWarning); setComboColor1(Settings.Instance.ReserveRectColorAutoAddMissing, comboBox_reserveAutoAddMissing); setColors(groupEpgColorsReserve, null, Settings.Instance.ContentCustColorList); // [番組表] - [色2] setColors(groupEpgTimeColors, Settings.Instance.EpgEtcColors, Settings.Instance.EpgEtcCustColors); setColors(groupEpgEtcColors, Settings.Instance.EpgEtcColors, Settings.Instance.EpgEtcCustColors); // [使用予定チューナー] - [基本] setColors(groupTunerFontColor, Settings.Instance.TunerServiceColors, Settings.Instance.TunerServiceCustColors); // [使用予定チューナー] - [色] setColors(groupTunerColors, Settings.Instance.TunerServiceColors, Settings.Instance.TunerServiceCustColors); // [録画済み一覧] checkBox_playDClick.IsChecked = Settings.Instance.PlayDClick; checkBox_recNoYear.IsChecked = Settings.Instance.RecInfoNoYear; checkBox_recNoSecond.IsChecked = Settings.Instance.RecInfoNoSecond; checkBox_recNoDurSecond.IsChecked = Settings.Instance.RecInfoNoDurSecond; checkBox_ChacheOn.IsChecked = Settings.Instance.RecInfoExtraDataCache; checkBox_CacheOptimize.IsChecked = Settings.Instance.RecInfoExtraDataCacheOptimize; checkBox_CacheKeepConnect.IsChecked = Settings.Instance.RecInfoExtraDataCacheKeepConnect; if (CommonManager.Instance.NWMode == false) { checkBox_CacheKeepConnect.IsEnabled = false;//{Binding}を破棄しているので注意 } textBox_dropErrIgnore.Text = Settings.Instance.RecInfoDropErrIgnore.ToString(); textBox_dropWrnIgnore.Text = Settings.Instance.RecInfoDropWrnIgnore.ToString(); textBox_scrambleIgnore.Text = Settings.Instance.RecInfoScrambleIgnore.ToString(); checkBox_recinfo_errCritical.IsChecked = Settings.Instance.RecinfoErrCriticalDrops; setColors(groupRecInfoBackColors, Settings.Instance.RecEndColors, Settings.Instance.RecEndCustColors); // [予約一覧・共通] - [基本] this.ctxmSetInfo = Settings.Instance.MenuSet.Clone(); checkBox_displayAutoAddMissing.IsChecked = Settings.Instance.DisplayReserveAutoAddMissing; textBox_DisplayJumpTime.Text = Settings.Instance.DisplayNotifyJumpTime.ToString(); checkBox_resNoYear.IsChecked = Settings.Instance.ResInfoNoYear; checkBox_resNoSecond.IsChecked = Settings.Instance.ResInfoNoSecond; checkBox_resNoDurSecond.IsChecked = Settings.Instance.ResInfoNoDurSecond; checkBox_LaterTimeUse.IsChecked = Settings.Instance.LaterTimeUse; textBox_LaterTimeHour.Text = (Settings.Instance.LaterTimeHour + 24).ToString(); checkBox_displayPresetOnSearch.IsChecked = Settings.Instance.DisplayPresetOnSearch; checkBox_nekopandaToolTip.IsChecked = Settings.Instance.RecItemToolTip; checkBox_displayStatus.IsChecked = Settings.Instance.DisplayStatus; checkBox_displayStatusNotify.IsChecked = Settings.Instance.DisplayStatusNotify; checkBox_IsVisibleReserveView.IsChecked = Settings.Instance.IsVisibleReserveView; checkBox_IsVisibleRecInfoView.IsChecked = Settings.Instance.IsVisibleRecInfoView; checkBox_IsVisibleAutoAddView.IsChecked = Settings.Instance.IsVisibleAutoAddView; checkBox_IsVisibleAutoAddViewMoveOnly.IsChecked = Settings.Instance.IsVisibleAutoAddViewMoveOnly; foreach (var item in new Dictionary<object, string> { { CtxmCode.ReserveView, "予約一覧" },{ CtxmCode.TunerReserveView, "使用予定チューナ" }, { CtxmCode.RecInfoView, "録画済み一案" },{ CtxmCode.EpgAutoAddView, "キーワード予約登録" }, { CtxmCode.ManualAutoAddView, "プログラム予約登録" },{ CtxmCode.EpgView, "番組表" } }) { wrapPanel_StartTab.Children.Add(new RadioButton { Tag = item.Key, Content = item.Value }); } var rbtn = wrapPanel_StartTab.Children.OfType<RadioButton>() .FirstOrDefault(item => item.Tag as CtxmCode? == Settings.Instance.StartTab); if (rbtn != null) rbtn.IsChecked = true; foreach (var item in new Dictionary<object, string> { { Dock.Bottom, "下" },{ Dock.Top, "上" },{ Dock.Left, "左" },{ Dock.Right, "右" } }) { wrapPanel_MainViewButtonsDock.Children.Add(new RadioButton { Tag = item.Key, Content = item.Value }); } rbtn = wrapPanel_MainViewButtonsDock.Children.OfType<RadioButton>() .FirstOrDefault(item => item.Tag as Dock? == Settings.Instance.MainViewButtonsDock); if (rbtn != null) rbtn.IsChecked = true; InitializeStyleList(); // [予約一覧・共通] - [色] setComboColor1(Settings.Instance.ListDefColor, cmb_ListDefFontColor); setButtonColor1(Settings.Instance.ListDefCustColor, btn_ListDefFontColor); setColors(groupReserveRecModeColors, Settings.Instance.RecModeFontColors, Settings.Instance.RecModeFontCustColors); setColors(groupReserveBackColors, Settings.Instance.ResBackColors, Settings.Instance.ResBackCustColors); setColors(groupStatColors, Settings.Instance.StatColors, Settings.Instance.StatCustColors); // [予約簡易表示] textBox_iw_refresh_interval.Text = Settings.Instance.InfoWindowRefreshInterval.ToString(); radioButton_iw_based_on_bcst.IsChecked = Settings.Instance.InfoWindowBasedOnBroadcast; radioButton_iw_based_on_rec.IsChecked = !Settings.Instance.InfoWindowBasedOnBroadcast; switch(Settings.Instance.InfoWindowItemFilterLevel) { default: radioButton_All.IsChecked = true; break; case 1: radioButton_Level1.IsChecked = true; break; case 2: radioButton_Level2.IsChecked = true; break; case 3: radioButton_Level3.IsChecked = true; break; case int.MaxValue: radioButton_TopN.IsChecked = true; break; } switch (Settings.Instance.InfoWindowItemProgressBarType) { default: radioButton_ProgressBarOff.IsChecked = true; break; case 1: radioButton_ProgressBarType1.IsChecked = true; break; case 2: radioButton_ProgressBarType2.IsChecked = true; break; } setColors(groupInfoWinItemProgressBarColors, Settings.Instance.InfoWindowItemProgressBarColors, Settings.Instance.InfoWindowItemProgressBarCustColors); checkBox_bgTransparent.IsChecked = Settings.Instance.InfoWindowItemProgressBarTransparent; textBox_TopN.Text = Settings.Instance.InfoWindowItemTopN.ToString(); textBox_iw_item_level1.Text = (Settings.Instance.InfoWindowItemLevel1Seconds / 60.0).ToString(); textBox_iw_item_level2.Text = (Settings.Instance.InfoWindowItemLevel2Seconds / 60.0).ToString(); textBox_iw_item_level3.Text = (Settings.Instance.InfoWindowItemLevel3Seconds / 60.0).ToString(); setColors(groupInfoWinItemBgColors, Settings.Instance.InfoWindowItemBgColors, Settings.Instance.InfoWindowItemBgCustColors); } catch (Exception ex) { MessageBox.Show(ex.Message + "\r\n" + ex.StackTrace); } }