EpgDataViewSettingWindow.xaml の相互作用ロジック
Inheritance: System.Windows.Window
Example #1
0
 /// <summary>
 /// 右クリックメニュー 表示設定イベント呼び出し
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void cm_viewSet_Click(object sender, RoutedEventArgs e)
 {
     if (Settings.Instance.UseCustomEpgView == false)
     {
         MessageBox.Show("デフォルト表示では設定を変更することはできません。");
     }
     else
     {
         var dlg = new EpgDataViewSettingWindow();
         dlg.Owner = (Window)PresentationSource.FromVisual(this).RootVisual;
         dlg.SetDefSetting(setViewInfo);
         if (dlg.ShowDialog() == true)
         {
             var setInfo = dlg.GetSetting();
             if (setInfo.ViewMode == setViewInfo.ViewMode)
             {
                 setViewInfo = setInfo;
                 UpdateEpgData();
             }
             else if (ViewModeChangeRequested != null)
             {
                 ViewModeChangeRequested(this, setInfo, null);
             }
         }
     }
 }
Example #2
0
        void epgView_ViewSettingClick(object sender, object param)
        {
            try
            {
                if (Settings.Instance.UseCustomEpgView == false)
                {
                    MessageBox.Show("デフォルト表示では設定を変更することはできません。");
                }
                else
                {
                    if (sender.GetType() == typeof(EpgDataViewItem))
                    {
                        if (param == null)
                        {
                            EpgDataViewItem  item    = sender as EpgDataViewItem;
                            CustomEpgTabInfo setInfo = new CustomEpgTabInfo();
                            item.GetViewMode(ref setInfo);

                            EpgDataViewSettingWindow dlg       = new EpgDataViewSettingWindow();
                            PresentationSource       topWindow = PresentationSource.FromVisual(this);
                            if (topWindow != null)
                            {
                                dlg.Owner = (Window)topWindow.RootVisual;
                            }
                            dlg.SetDefSetting(setInfo);
                            if (dlg.ShowDialog() == true)
                            {
                                dlg.GetSetting(ref setInfo);
                                item.SetViewMode(setInfo);
                            }
                        }
                        else
                        {
                            EpgDataViewItem  item    = sender as EpgDataViewItem;
                            CustomEpgTabInfo setInfo = param as CustomEpgTabInfo;
                            item.SetViewMode(setInfo);
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message + "\r\n" + ex.StackTrace);
            }
        }
Example #3
0
        /// <summary>
        /// 右クリックメニュー 表示設定イベント呼び出し
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void cm_viewSet_Click(object sender, RoutedEventArgs e)
        {
            var dlg = new EpgDataViewSettingWindow();

            dlg.Owner = (Window)PresentationSource.FromVisual(this).RootVisual;
            dlg.SetDefSetting(setViewInfo);
            if (dlg.ShowDialog() == true)
            {
                var setInfo = dlg.GetSetting();
                if (setInfo.ViewMode == setViewInfo.ViewMode)
                {
                    setViewInfo = setInfo;
                    UpdateEpgData();
                }
                else if (ViewModeChangeRequested != null)
                {
                    ViewModeChangeRequested(this, setInfo, baseTime, null);
                }
            }
        }
Example #4
0
        private void item_ViewSettingClick(object sender, object param)
        {
            try
            {
                if (param == null)
                {
                    var dlg = new EpgDataViewSettingWindow();
                    dlg.Owner = CommonUtil.GetTopWindow(this);
                    dlg.SetDefSetting(this.GetViewMode());
                    dlg.SetTrySetModeEnable();
                    if (Settings.Instance.UseCustomEpgView == false)
                    {
                        dlg.SetTrySetModeOnly();
                    }
                    if (dlg.ShowDialog() == true)
                    {
                        var setInfo = new CustomEpgTabInfo();;
                        dlg.GetSetting(ref setInfo);

                        if (Settings.Instance.UseCustomEpgView == true && Settings.Instance.TryEpgSetting == false)
                        {
                            if (setInfo.ID >= 0 && setInfo.ID <= Settings.Instance.CustomEpgTabList.Count)
                            {
                                Settings.Instance.CustomEpgTabList[setInfo.ID] = setInfo;
                                Settings.SaveToXmlFile();
                            }
                        }

                        this.SetViewMode(setInfo);
                        viewCtrl.UpdateInfo();
                    }
                }
                else
                {
                    CustomEpgTabInfo setInfo = param as CustomEpgTabInfo;
                    this.SetViewMode(setInfo);
                }
            }
            catch (Exception ex) { MessageBox.Show(ex.Message + "\r\n" + ex.StackTrace); }
        }
Example #5
0
        private void epgView_ViewSettingClick(EpgViewBase sender, int param)
        {
            try
            {
                EpgTabItem tab = Tabs.FirstOrDefault(ti => ti.view == sender);
                if (tab == null)
                {
                    return;
                }

                if (param < -2 || 2 < param)
                {
                    return;
                }

                CustomEpgTabInfo info = null;
                if (param == -1)
                {
                    //表示設定変更ダイアログから
                    var dlg = new EpgDataViewSettingWindow(tab.Info);
                    dlg.Owner = CommonUtil.GetTopWindow(this);
                    dlg.SetTryMode(Settings.Instance.UseCustomEpgView == false);
                    if (dlg.ShowDialog() == false)
                    {
                        return;
                    }

                    info = dlg.GetSetting();
                    if (info.Uid != tab.Uid)
                    {
                        return;                     //保険
                    }
                    //設定の保存。
                    if (Settings.Instance.UseCustomEpgView == true && Settings.Instance.TryEpgSetting == false &&
                        info.ID >= 0 && info.ID < tabInfo.Count && info.ID < Settings.Instance.CustomEpgTabList.Count)
                    {
                        tabInfo[info.ID] = info;
                        Settings.Instance.CustomEpgTabList[info.ID] = info;
                        Settings.SaveToXmlFile();
                        SettingWindow.UpdatesInfo("番組表関連の変更");
                    }

                    if (info.IsVisible == false)
                    {
                        tabControl.Items.Remove(tab);
                        return;
                    }
                }
                else if (param == -2)
                {
                    info = tabInfo.Find(tinfo => tinfo.ID == tab.Info.ID);
                    if (info == null)
                    {
                        return;
                    }
                }

                //選択用タブの選択を切り替え。
                tab_viewMode_Change(info != null ? info.ViewMode : param);

                tab.UpdateContent(info, param);
            }
            catch (Exception ex) { MessageBox.Show(ex.Message + "\r\n" + ex.StackTrace); }
        }
Example #6
0
        void epgView_ViewSettingClick(object sender, object param)
        {
            try
            {
                if (Settings.Instance.UseCustomEpgView == false)
                {
                    MessageBox.Show("デフォルト表示では設定を変更することはできません。");
                }
                else
                {
                    if (sender.GetType() == typeof(EpgDataViewItem))
                    {
                        if (param == null)
                        {
                            EpgDataViewItem item = sender as EpgDataViewItem;
                            CustomEpgTabInfo setInfo = new CustomEpgTabInfo();
                            item.GetViewMode(ref setInfo);

                            EpgDataViewSettingWindow dlg = new EpgDataViewSettingWindow();
                            PresentationSource topWindow = PresentationSource.FromVisual(this);
                            if (topWindow != null)
                            {
                                dlg.Owner = (Window)topWindow.RootVisual;
                            }
                            dlg.SetDefSetting(setInfo);
                            if (dlg.ShowDialog() == true)
                            {
                                dlg.GetSetting(ref setInfo);
                                item.SetViewMode(setInfo);
                            }
                        }
                        else
                        {
                            EpgDataViewItem item = sender as EpgDataViewItem;
                            CustomEpgTabInfo setInfo = param as CustomEpgTabInfo;
                            item.SetViewMode(setInfo);
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message + "\r\n" + ex.StackTrace);
            }
        }
Example #7
0
        private void item_ViewSettingClick(object sender, object param)
        {
            try
            {
                if (param == null)
                {
                    var dlg = new EpgDataViewSettingWindow();
                    var topWindow = PresentationSource.FromVisual(this);
                    if (topWindow != null)
                    {
                        dlg.Owner = (Window)topWindow.RootVisual;
                    }
                    dlg.SetDefSetting(this.GetViewMode());
                    dlg.SetTrySetModeEnable();
                    if (Settings.Instance.UseCustomEpgView == false)
                    {
                        dlg.SetTrySetModeOnly();
                    }
                    if (dlg.ShowDialog() == true)
                    {
                        var setInfo = new CustomEpgTabInfo(); ;
                        dlg.GetSetting(ref setInfo);

                        if (Settings.Instance.UseCustomEpgView == true && Settings.Instance.TryEpgSetting == false)
                        {
                            if (setInfo.ID >= 0 && setInfo.ID <= Settings.Instance.CustomEpgTabList.Count)
                            {
                                Settings.Instance.CustomEpgTabList[setInfo.ID] = setInfo;
                                Settings.SaveToXmlFile();
                            }
                        }

                        this.SetViewMode(setInfo);
                        viewCtrl.UpdateEpgData();
                    }
                }
                else
                {
                    CustomEpgTabInfo setInfo = param as CustomEpgTabInfo;
                    this.SetViewMode(setInfo);
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message + "\r\n" + ex.StackTrace);
            }
        }
Example #8
0
        private void epgView_ViewSettingClick(int param)
        {
            try
            {
                var tab = tabControl.SelectedItem as EpgTabItem;
                if (tab == null)
                {
                    return;
                }

                if (param < -2 || 2 < param)
                {
                    return;
                }

                CustomEpgTabInfo info = null;
                if (param == -1)
                {
                    //表示設定変更ダイアログから
                    var dlg = new EpgDataViewSettingWindow(tab.Info);
                    dlg.Owner = CommonUtil.GetTopWindow(this);
                    dlg.SetTryMode(Settings.Instance.UseCustomEpgView == false);
                    if (dlg.ShowDialog() == false)
                    {
                        return;
                    }

                    info = dlg.GetSetting();
                    if (info.Uid != tab.Uid)
                    {
                        return;                     //保険
                    }
                    //設定の保存。
                    if (Settings.Instance.UseCustomEpgView == true && Settings.Instance.TryEpgSetting == false)
                    {
                        int idx1 = tabInfo.FindIndex(ti => ti.ID == info.ID);
                        int idx2 = Settings.Instance.CustomEpgTabList.FindIndex(ti => ti.ID == info.ID);
                        if (idx1 >= 0 && idx2 >= 0)
                        {
                            tabInfo[idx1] = info;
                            Settings.Instance.CustomEpgTabList[idx2] = info;
                            Settings.SaveToXmlFile();
                            SettingWindow.UpdatesInfo("番組表関連の変更");
                        }
                    }

                    if (info.IsVisible == false)
                    {
                        tabControl.Items.Remove(tab);
                        return;
                    }
                }
                else if (param == -2)
                {
                    info = get_tabInfo(tab.Uid);
                    if (info == null)
                    {
                        return;
                    }
                }

                //選択用タブの選択を切り替え。
                tab_viewMode_ChangeTabOnly(info != null ? info.ViewMode : param);
                tab.ChangeContent(info, param);
            }
            catch (Exception ex) { MessageBox.Show(ex.Message + "\r\n" + ex.StackTrace); }
        }