RecSettingView.xaml の相互作用ロジック
Inheritance: System.Windows.Controls.UserControl
Example #1
0
        public static bool ReserveChangeOnOff(List <ReserveData> itemlist, RecSettingView recSettingView = null, bool cautionMany = true)
        {
            try
            {
                //無効から戻す録画モードの選択
                var setInfo = new RecSettingData();

                //現在の設定を読み込む。SearchWindowの場合だけ。
                if (recSettingView != null)
                {
                    setInfo = recSettingView.GetRecSetting();

                    //現在の設定が無効で登録の場合は、デフォルトの設定を読み込みに行く
                    if (setInfo.RecMode == 5)
                    {
                        recSettingView = null;
                    }
                }
                //デフォルト設定を読み込む
                if (recSettingView == null)
                {
                    Settings.GetDefRecSetting(0, ref setInfo);
                }
                //デフォルトも無効で登録なら、指定サービスにする
                byte recMode = setInfo.RecMode != 5 ? setInfo.RecMode : (byte)1;

                //個別設定なので、ChangeRecmode()は不可。
                itemlist.ForEach(item => item.RecSetting.RecMode = (item.RecSetting.RecMode == 5 ? recMode : (byte)5));

                return(ReserveChange(itemlist, cautionMany));
            }
            catch (Exception ex) { MessageBox.Show(ex.Message + "\r\n" + ex.StackTrace); }
            return(false);
        }
Example #2
0
        public static bool ReserveAdd(List <EpgEventInfo> itemlist, RecSettingView recSettingView, int presetID = 0, bool cautionMany = true)
        {
            itemlist = CheckReservable(itemlist);
            if (itemlist == null)
            {
                return(false);
            }

            RecSettingData setInfo;

            if (recSettingView != null)
            {
                //ダイアログからの予約、SearchWindowの簡易予約
                setInfo = recSettingView.GetRecSetting();
            }
            else
            {
                //簡易予約やプリセット予約
                setInfo = Settings.Instance.RecPreset(presetID).Data;
            }

            var list = new List <ReserveData>();

            foreach (EpgEventInfo item in itemlist)
            {
                var resInfo = new ReserveData();
                item.ConvertToReserveData(ref resInfo);
                resInfo.RecSetting = setInfo;//setInfoはコピーしなくても大丈夫。
                list.Add(resInfo);
            }

            return(ReserveAdd(list, cautionMany));
        }
Example #3
0
        public static bool ReserveChangeOnOff(List <ReserveData> itemlist, RecSettingView recSettingView = null, bool cautionMany = true)
        {
            //無効から戻す録画モードの選択。とりあえずデフォルト設定から。無効で登録なら指定サービスにする。
            byte defMode = Settings.Instance.RecPresetList[0].Data.RecMode;

            defMode = defMode != 5 ? defMode : (byte)1;

            //SearchWindowの場合は現在のビューの設定を読み込む。ただし無効で登録ならデフォルト優先。
            if (recSettingView != null)
            {
                byte viewMode = recSettingView.GetRecSetting().RecMode;
                defMode = viewMode != 5 ? viewMode : defMode;
            }

            //個別設定なので、ChangeRecmode()は不可。
            itemlist.ForEach(item => item.RecSetting.RecMode = (item.RecSetting.RecMode == 5 ? defMode : (byte)5));

            return(ReserveChange(itemlist, cautionMany));
        }
Example #4
0
        public static bool ReserveAdd(List <EpgEventInfo> itemlist, RecSettingView recSettingView, uint presetID = 0, bool cautionMany = true)
        {
            try
            {
                if (itemlist.Count == 1)
                {
                    if (IsEnableReserveAdd(itemlist[0]) == false)
                    {
                        return(false);
                    }
                }

                var setInfo = new RecSettingData();
                if (recSettingView != null)
                {
                    //ダイアログからの予約、SearchWindowの簡易予約
                    setInfo = recSettingView.GetRecSetting();
                }
                else
                {
                    //簡易予約やプリセット予約
                    Settings.GetDefRecSetting(presetID, ref setInfo);
                }

                var list = new List <ReserveData>();

                foreach (EpgEventInfo item in itemlist)
                {
                    if (item.StartTimeFlag != 0)
                    {
                        var resInfo = new ReserveData();
                        item.ConvertToReserveData(ref resInfo);
                        resInfo.RecSetting = setInfo;
                        list.Add(resInfo);
                    }
                }

                return(ReserveAdd(list, cautionMany));
            }
            catch (Exception ex) { MessageBox.Show(ex.Message + "\r\n" + ex.StackTrace); }
            return(false);
        }