コード例 #1
0
ファイル: SearchWindow.xaml.cs プロジェクト: nekopanda/EDCB
        //proc 0:追加、1:変更、2:削除
        private bool CheckAutoAddChange(ExecutedRoutedEventArgs e, int proc)
        {
            if (CmdExeUtil.IsDisplayKgMessage(e) == true)
            {
                var strMode = new string[] { "追加", "変更", "削除" }[proc];
                if (MessageBox.Show("キーワード予約登録を" + strMode + "します。\r\nよろしいですか?", strMode + "の確認", MessageBoxButton.OKCancel) != MessageBoxResult.OK)
                {
                    return(false);
                }
            }

            //データの更新。最初のキャンセルを過ぎたら画面を更新する。
            SearchPg();

            if (proc != 0)
            {
                if (CommonManager.Instance.DB.EpgAutoAddList.ContainsKey(this.autoAddID) == false)
                {
                    MessageBox.Show("項目がありません。\r\n" + "既に削除されています。\r\n" + "(別のEpgtimerによる操作など)", "データエラー", MessageBoxButton.OK, MessageBoxImage.Exclamation);
                    SetViewMode(SearchMode.NewAdd);
                    this.autoAddID = 0;
                    return(false);
                }
            }

            if (proc != 2 && Settings.Instance.CautionManyChange == true && searchKeyView.searchKeyDescView.checkBox_keyDisabled.IsChecked != true)
            {
                if (MenuUtil.CautionManyMessage(lstCtrl.dataList.GetNoReserveList().Count, "予約追加の確認") == false)
                {
                    return(false);
                }
            }

            return(true);
        }
コード例 #2
0
        public void SaveOrder_handler(object sender, ExecutedRoutedEventArgs e)
        {
            try
            {
                if (CmdExeUtil.IsDisplayKgMessage(e) == true)
                {
                    if (MessageBox.Show("並びの変更を保存します。\r\nよろしいですか?", "保存の確認",
                                        MessageBoxButton.OKCancel) != MessageBoxResult.OK)
                    {
                        return;
                    }
                }

                //並び替えテーブル
                var changeIDTable = GetChangeIDTable();

                if (hlp.SaveChange(changeIDTable) == true)
                {
                    this.NotSaved = false;

                    //結果を保存する
                    if (e.Parameter is EpgCmdParam)
                    {
                        (e.Parameter as EpgCmdParam).Data = changeIDTable;
                    }
                }
            }
            catch (Exception ex) { MessageBox.Show(ex.Message + "\r\n" + ex.StackTrace); }
        }
コード例 #3
0
        protected virtual int CheckAutoAddChange(ExecutedRoutedEventArgs e, int proc)
        {
            if (proc != 3)
            {
                if (CmdExeUtil.IsDisplayKgMessage(e) == true)
                {
                    if (MessageBox.Show(AutoAddString + "を" + cmdMsg[proc] + "します。\r\nよろしいですか?", cmdMsg[proc] + "の確認", MessageBoxButton.OKCancel) != MessageBoxResult.OK)
                    {
                        return(-2);
                    }
                }
            }
            else
            {
                if (CmdExeUtil.CheckAllProcCancel(e, CommonUtil.ToList(autoAddData), true) == true)
                {
                    return(-1);
                }
            }

            if (proc != 0)
            {
                if (autoAddData == null)
                {
                    MessageBox.Show("項目がありません。\r\n" + "既に削除されています。", "データエラー", MessageBoxButton.OK, MessageBoxImage.Exclamation);
                    SetViewMode(AutoAddMode.NewAdd);
                    return(1);
                }
            }

            return(0);
        }
コード例 #4
0
 protected virtual bool CheckReserveChange(ExecutedRoutedEventArgs e, int proc)
 {
     if (CmdExeUtil.IsDisplayKgMessage(e) == true)
     {
         if (MessageBox.Show("予約を" + cmdMsg[proc] + "します。\r\nよろしいですか?", cmdMsg[proc] + "の確認", MessageBoxButton.OKCancel) != MessageBoxResult.OK)
         {
             return(false);
         }
     }
     if (proc != 0)
     {
         if (CheckExistReserveItem() == false)
         {
             return(false);
         }
     }
     return(true);
 }
コード例 #5
0
        private void button_add_reserve_Click(object sender, ExecutedRoutedEventArgs e)
        {
            if (CmdExeUtil.IsDisplayKgMessage(e) == true)
            {
                if (MessageBox.Show("予約を追加します。\r\nよろしいですか?", "追加の確認", MessageBoxButton.OKCancel) != MessageBoxResult.OK)
                {
                    return;
                }
            }
            bool ret = MenuUtil.ReserveAdd(CommonUtil.ToList(eventInfo), recSettingView);

            CommonManager.Instance.StatusNotifySet(ret, "録画予約を追加");

            if (ret == false)
            {
                return;
            }
            DialogResult = true;
        }
コード例 #6
0
        private void reserve_proc(ExecutedRoutedEventArgs e, int proc)
        {
            if (CmdExeUtil.IsDisplayKgMessage(e) == true)
            {
                if (MessageBox.Show("予約を" + cmdMsg[proc] + "します。\r\nよろしいですか?", cmdMsg[proc] + "の確認", MessageBoxButton.OKCancel) != MessageBoxResult.OK)
                {
                    return;
                }
            }

            bool ret = false;

            if (proc == 0)
            {
                ret = MenuUtil.ReserveAdd(CommonUtil.ToList(eventInfo), recSettingView);
            }
            else
            {
                List <ReserveData> list = GetReserveList();
                if (proc == 1)
                {
                    RecSettingData recSet = recSettingView.GetRecSetting();
                    list.ForEach(data => data.RecSetting = recSet);
                    ret = MenuUtil.ReserveChange(list);
                }
                else
                {
                    ret = MenuUtil.ReserveDelete(list);
                }
            }

            StatusManager.StatusNotifySet(ret, "録画予約を" + cmdMsg[proc]);

            if (ret == false)
            {
                return;
            }
            if (KeepWin == false)
            {
                this.Close();
            }
        }
コード例 #7
0
        private void button_del_reserve_Click(object sender, ExecutedRoutedEventArgs e)
        {
            if (CmdExeUtil.IsDisplayKgMessage(e) == true)
            {
                if (MessageBox.Show("この予約を削除します。\r\nよろしいですか?", "削除の確認", MessageBoxButton.OKCancel) != MessageBoxResult.OK)
                {
                    return;
                }
            }

            if (CheckExistReserveItem() == false)
            {
                return;
            }

            bool ret = MenuUtil.ReserveDelete(CommonUtil.ToList(reserveInfo));

            CommonManager.Instance.StatusNotifySet(ret, "録画予約を削除");

            DialogResult = true;
        }
コード例 #8
0
        //proc 0:追加、1:変更、2:削除、3:予約ごと削除
        private bool CheckAutoAddChange(ExecutedRoutedEventArgs e, int proc)
        {
            if (proc != 3)
            {
                if (CmdExeUtil.IsDisplayKgMessage(e) == true)
                {
                    var strMode = new string[] { "追加", "変更", "削除" }[proc];
                    if (MessageBox.Show("プログラム予約登録を" + strMode + "します。\r\nよろしいですか?", strMode + "の確認", MessageBoxButton.OKCancel) != MessageBoxResult.OK)
                    {
                        return(false);
                    }
                }
            }
            else
            {
                if (CmdExeUtil.CheckAllProcCancel(e, CommonUtil.ToList(defKey), cmdCheckType.Delete2) == true)
                {
                    return(false);
                }
            }

            if (proc != 0)
            {
                if (CommonManager.Instance.DB.ManualAutoAddList.ContainsKey(this.defKey.dataID) == false)
                {
                    MessageBox.Show("項目がありません。\r\n" + "既に削除されています。\r\n" + "(別のEpgtimerによる操作など)", "データエラー", MessageBoxButton.OK, MessageBoxImage.Exclamation);

                    //追加モードに変更
                    SetChangeMode(false);
                    defKey = null;
                    return(false);
                }
            }

            return(true);
        }
コード例 #9
0
        private void button_chg_reserve_Click(object sender, ExecutedRoutedEventArgs e)
        {
            try
            {
                if (CmdExeUtil.IsDisplayKgMessage(e) == true)
                {
                    bool change_proc = false;
                    switch (addMode)
                    {
                    case AddMode.Add:
                        change_proc = (MessageBox.Show("予約を追加します。\r\nよろしいですか?", "予約の確認", MessageBoxButton.OKCancel) == MessageBoxResult.OK);
                        break;

                    case AddMode.Re_Add:
                        change_proc = (MessageBox.Show("この内容で再予約します。\r\nよろしいですか?", "再予約の確認", MessageBoxButton.OKCancel) == MessageBoxResult.OK);
                        break;

                    case AddMode.Change:
                        change_proc = (MessageBox.Show("この予約を変更します。\r\nよろしいですか?", "変更の確認", MessageBoxButton.OKCancel) == MessageBoxResult.OK);
                        break;
                    }
                    if (change_proc == false)
                    {
                        return;
                    }
                }

                if (addMode == AddMode.Change && CheckExistReserveItem() == false)
                {
                    return;
                }

                //ダイアログを閉じないときはreserveInfoを変更しないよう注意する
                if (ReserveMode == UIReserveMode.Program)
                {
                    var resInfo = new ReserveData();
                    if (GetReserveTimeInfo(ref resInfo) == -2)
                    {
                        MessageBox.Show("終了日時が開始日時より前です");
                        return;
                    }

                    //reserveInfo取得前に保存する。サービスや時間が変わったら、個別予約扱いにする。タイトルのみ変更は見ない。
                    bool chgManualMode = !CtrlCmdDefEx.EqualsPg(resInfo, reserveInfo, false, true);

                    GetReserveTimeInfo(ref reserveInfo);
                    if (reserveInfo.EventID != 0xFFFF || chgManualMode == true)
                    {
                        reserveInfo.EventID = 0xFFFF;
                        reserveInfo.Comment = "";
                    }
                    reserveInfo.StartTimeEpg = reserveInfo.StartTime;
                }
                else if (ReserveMode == UIReserveMode.EPGManual)
                {
                    //EPG予約に変える場合、またはEPG予約で別の番組に変わる場合
                    if (eventInfoNew != null)
                    {
                        //基本的にAddReserveEpgWindowと同じ処理内容
                        if (MenuUtil.IsEnableReserveAdd(eventInfoNew) == false)
                        {
                            return;
                        }
                        eventInfoNew.ConvertToReserveData(ref reserveInfo);
                        reserveInfo.Comment = "";
                    }
                    // 自動予約から個別予約に変える場合
                    else if (GetReserveModeFromInfo() == UIReserveMode.EPGAuto)
                    {
                        reserveInfo.Comment = "";
                    }
                }

                reserveInfo.RecSetting = recSettingView.GetRecSetting();

                if (addMode == AddMode.Change)
                {
                    bool ret = MenuUtil.ReserveChange(CommonUtil.ToList(reserveInfo));
                    CommonManager.Instance.StatusNotifySet(ret, "録画予約を変更");
                }
                else
                {
                    bool ret = MenuUtil.ReserveAdd(CommonUtil.ToList(reserveInfo));
                    CommonManager.Instance.StatusNotifySet(ret, "録画予約を追加");
                }

                // EPG自動予約以外になったら戻せないようにしておく
                if (ReserveMode != UIReserveMode.EPGAuto)
                {
                    CanSelectAutoAdd = false;
                }
            }
            catch (Exception ex) { MessageBox.Show(ex.Message + "\r\n" + ex.StackTrace); }

            DialogResult = true;
        }