예제 #1
0
        public string ConvertRecSettingText()
        {
            var recfolderString = new Func <string, string, string, string>((folder, wp, fp) =>
            {
                return((folder != "!Default" ? folder + " (" : Settings.Instance.DefRecFolders[0] + " (デフォルトフォルダ, ") +
                       wp + ", " + (fp.Length > 0 ? fp : "ファイル名PlugInなし") + ")");
            });

            if (RecSettingInfo == null)
            {
                return("");
            }
            //
            string view = "録画有効 : " + RecEnabled + "\r\n";

            view += "録画モード : " + RecMode + "\r\n";
            view += "優先度 : " + Priority + "\r\n";
            view += "追従 : " + Tuijyu + "\r\n";
            view += "ぴったり(?): " + Pittari + "\r\n";
            view += "指定サービス対象データ : 字幕含" + (RecSettingInfo.ServiceCaptionActual ? "める" : "めない")
                    + " データカルーセル含" + (RecSettingInfo.ServiceDataActual ? "める" : "めない")
                    + (RecSettingInfo.ServiceModeIsDefault ? " (デフォルト)" : "") + "\r\n";
            view += "録画後実行bat : " + (RecSettingInfo.BatFilePath == "" ? "なし" : RecSettingInfo.BatFilePath) + "\r\n";

            view += "録画フォルダ :" + (RecSettingInfo.RecFolderList.Any() ? "" : " (デフォルト)") + "\r\n";
            if (RecSettingInfo.RecFolderList.Any())
            {
                foreach (RecFileSetInfo info in RecSettingInfo.RecFolderList)
                {
                    view += recfolderString(info.RecFolder, info.WritePlugIn, info.RecNamePlugIn) + "\r\n";
                }
            }
            else
            {
                string plugInFile = IniFileHandler.GetPrivateProfileString("SET", "RecNamePlugInFile", "RecName_Macro.dll", SettingPath.TimerSrvIniPath);
                foreach (string info in Settings.Instance.DefRecFolders)
                {
                    view += recfolderString(info, "Write_Default.dll", plugInFile) + "\r\n";
                }
            }
            view += "録画タグ : " + RecSettingInfo.RecTag + "\r\n";
            view += "録画マージン : 開始 " + RecSettingInfo.StartMarginActual.ToString() +
                    " 終了 " + RecSettingInfo.EndMarginActual.ToString()
                    + (RecSettingInfo.IsMarginDefault == true ? " (デフォルト)" : "") + "\r\n";

            view += "録画後動作 : " + CommonManager.ConvertRecEndModeText(RecSettingInfo.RecEndModeActual)
                    + (RecSettingInfo.RebootFlagActual == 1 ? " 復帰後再起動する" : "")
                    + (RecSettingInfo.RecEndIsDefault == true ? " (デフォルト)" : "") + "\r\n";

            view += "部分受信 : 同時出力" + (RecSettingInfo.PartialRecFlag == 0 ? "なし" : "あり") + "\r\n";
            view += "部分受信 指定フォルダ :" + (RecSettingInfo.PartialRecFolder.Any() ? "" : " なし") + "\r\n";
            foreach (RecFileSetInfo info in RecSettingInfo.PartialRecFolder)
            {
                view += recfolderString(info.RecFolder, info.WritePlugIn, info.RecNamePlugIn) + "\r\n";
            }
            view += "連続録画動作 : " + (RecSettingInfo.ContinueRecFlag == 0 ? "分割" : "同一ファイル出力") + "\r\n";
            view += "使用チューナー強制指定 : " + TunerID;

            return(view);
        }
예제 #2
0
        //コンテキストメニューの定義
        private void SetDefCtxmData()
        {
            //各画面のコンテキストメニュー。空にならないようとりあえず全部作っておく。
            DefCtxmData = new Dictionary <CtxmCode, CtxmData>();
            foreach (CtxmCode code in Enum.GetValues(typeof(CtxmCode)))
            {
                DefCtxmData.Add(code, new CtxmData(code));
            }

            //サブメニューなど設定のあるものは、情報固定のためいったん定義する。
            var cm_Separator = new CtxmItemData(EpgCmdsEx.SeparatorString, EpgCmdsEx.Separator);

            //予約追加サブメニュー 実行時、セパレータ以降にプリセットを展開する。
            var cm_AddMenu = new CtxmItemData("予約追加(仮)", EpgCmdsEx.AddMenu);

            cm_AddMenu.Items.Add(new CtxmItemData("ダイアログ表示(_X)...", EpgCmds.ShowDialog, 1));
            cm_AddMenu.Items.Add(new CtxmItemData(cm_Separator));
            cm_AddMenu.Items.Add(new CtxmItemData("デフォルト", EpgCmds.AddOnPreset, 0));//仮

            //予約変更サブメニューの各サブメニュー
            ////自動登録の有効/無効
            var cm_ChgKeyEnabledMenu = new CtxmItemData("自動登録有効(仮)", EpgCmdsEx.ChgKeyEnabledMenu);

            cm_ChgKeyEnabledMenu.Items.Add(new CtxmItemData("有効(_0)", EpgCmds.ChgKeyEnabled, 0));
            cm_ChgKeyEnabledMenu.Items.Add(new CtxmItemData("無効(_1)", EpgCmds.ChgKeyEnabled, 1));

            ////プリセット変更 実行時、サブメニューにプリセットを展開する。
            var cm_ChgOnPresetMenu = new CtxmItemData("プリセットへ変更(仮)", EpgCmdsEx.ChgOnPresetMenu);

            cm_ChgOnPresetMenu.Items.Add(new CtxmItemData("デフォルト(_0)", EpgCmds.ChgOnPreset, 0));//仮

            ////予約モード変更
            var cm_ChgResModeMenu = new CtxmItemData("予約モード変更(仮)", EpgCmdsEx.ChgResModeMenu);

            cm_ChgResModeMenu.Items.Add(new CtxmItemData("EPG予約(_E)", EpgCmds.ChgResMode, 0));
            cm_ChgResModeMenu.Items.Add(new CtxmItemData("プログラム予約(_P)", EpgCmds.ChgResMode, 1));
            cm_ChgResModeMenu.Items.Add(new CtxmItemData(cm_Separator));

            ////録画モード
            var cm_ChgRecmodeMenu = new CtxmItemData("録画モード(仮)", EpgCmdsEx.ChgRecmodeMenu);

            for (int i = 0; i <= 5; i++)
            {
                cm_ChgRecmodeMenu.Items.Add(new CtxmItemData(string.Format("{0}(_{1})"
                                                                           , CommonManager.ConvertRecModeText(i), i), EpgCmds.ChgRecmode, i));
            }

            ////優先度
            var cm_ChgPriorityMenu = new CtxmItemData("優先度(仮)", EpgCmdsEx.ChgPriorityMenu);

            for (int i = 1; i <= 5; i++)
            {
                cm_ChgPriorityMenu.Items.Add(new CtxmItemData(
                                                 CommonManager.ConvertPriorityText(i).Insert(1, string.Format("(_{0})", i)), EpgCmds.ChgPriority, i));
            }

            ////イベントリレー変更
            var cm_ChgRelayMenu = new CtxmItemData("イベントリレー追従(仮)", EpgCmdsEx.ChgRelayMenu);

            for (int i = 0; i <= 1; i++)
            {
                cm_ChgRelayMenu.Items.Add(new CtxmItemData(string.Format("{0}(_{1})"
                                                                         , CommonManager.ConvertYesNoText(i), i), EpgCmds.ChgRelay, i));
            }

            ////ぴったり変更
            var cm_ChgPittariMenu = new CtxmItemData("ぴったり録画(仮)", EpgCmdsEx.ChgPittariMenu);

            for (int i = 0; i <= 1; i++)
            {
                cm_ChgPittariMenu.Items.Add(new CtxmItemData(string.Format("{0}(_{1})"
                                                                           , CommonManager.ConvertYesNoText(i), i), EpgCmds.ChgPittari, i));
            }

            ////チューナー変更、実行時、セパレータ以降に一覧を展開する。
            var cm_ChgTunerMenu = new CtxmItemData("チューナー(仮)", EpgCmdsEx.ChgTunerMenu);

            cm_ChgTunerMenu.Items.Add(new CtxmItemData("自動(_0)", EpgCmds.ChgTuner, 0));
            cm_ChgTunerMenu.Items.Add(new CtxmItemData(cm_Separator));

            ////開始マージン
            var cm_ChgMarginStartMenu = new CtxmItemData("開始マージン(仮)", EpgCmdsEx.ChgMarginStartMenu);

            cm_ChgMarginStartMenu.Items.Add(new CtxmItemData("デフォルトに変更(_I)", EpgCmds.ChgMarginStart, 0));
            cm_ChgMarginStartMenu.Items.Add(new CtxmItemData("指定値へ変更(_S)...", EpgCmds.ChgMarginValue, 1));
            cm_ChgMarginStartMenu.Items.Add(new CtxmItemData(cm_Separator));
            int idx  = 0;
            var vals = new int[] { 1, 5, 30, 60 };

            foreach (int val in vals.Concat(vals.Select(val => - val)))
            {
                cm_ChgMarginStartMenu.Items.Add(new CtxmItemData(string.Format(
                                                                     "{0:増やす;減らす}(_{1}) : {0:+0;-0} 秒", val, idx++), EpgCmds.ChgMarginStart, val));
            }
            cm_ChgMarginStartMenu.Items.Insert(cm_ChgMarginStartMenu.Items.Count - vals.Length, new CtxmItemData(cm_Separator));

            ////終了マージン、複製してコマンドだけ差し替える。
            var cm_ChgMarginEndMenu = new CtxmItemData("終了マージン(仮)", cm_ChgMarginStartMenu);

            cm_ChgMarginEndMenu.Command = EpgCmdsEx.ChgMarginEndMenu;
            cm_ChgMarginEndMenu.Items   = cm_ChgMarginStartMenu.Items.DeepClone();
            cm_ChgMarginEndMenu.Items.ForEach(menu => { if (menu.Command == EpgCmds.ChgMarginStart)
                                                        {
                                                            menu.Command = EpgCmds.ChgMarginEnd;
                                                        }
                                              });
            cm_ChgMarginEndMenu.Items.ForEach(menu => { if (menu.Command == EpgCmds.ChgMarginValue)
                                                        {
                                                            menu.ID = 2;
                                                        }
                                              });

            ////録画後動作
            var cm_ChgRecEndMenu = new CtxmItemData("録画後動作(仮)", EpgCmdsEx.ChgRecEndMenu);

            cm_ChgRecEndMenu.Items.Add(new CtxmItemData("デフォルトに変更(_I)", EpgCmds.ChgRecEndMode, -1));
            cm_ChgRecEndMenu.Items.Add(new CtxmItemData(cm_Separator));
            for (int i = 0; i <= 3; i++)
            {
                cm_ChgRecEndMenu.Items.Add(new CtxmItemData(string.Format("{0}(_{1})"
                                                                          , CommonManager.ConvertRecEndModeText(i), i), EpgCmds.ChgRecEndMode, i));
            }
            cm_ChgRecEndMenu.Items.Add(new CtxmItemData(cm_Separator));
            for (int i = 0; i <= 1; i++)
            {
                cm_ChgRecEndMenu.Items.Add(new CtxmItemData(string.Format("復帰後再起動{0}(_{1})"
                                                                          , CommonManager.ConvertYesNoText(i), i + 4), EpgCmds.ChgRecEndReboot, i));
            }

            //予約変更サブメニュー登録
            var cm_ChangeMenu = new CtxmItemData("変更(仮)", EpgCmdsEx.ChgMenu);

            cm_ChangeMenu.Items.Add(new CtxmItemData("ダイアログ表示...", EpgCmds.ShowDialog));
            cm_ChangeMenu.Items.Add(new CtxmItemData(cm_Separator));
            cm_ChangeMenu.Items.Add(new CtxmItemData("自動登録有効", cm_ChgKeyEnabledMenu));
            cm_ChangeMenu.Items.Add(new CtxmItemData("プリセットへ変更", cm_ChgOnPresetMenu));
            cm_ChangeMenu.Items.Add(new CtxmItemData("予約モード変更", cm_ChgResModeMenu));
            cm_ChangeMenu.Items.Add(new CtxmItemData("まとめて録画設定を変更...", EpgCmds.ChgBulkRecSet));
            cm_ChangeMenu.Items.Add(new CtxmItemData("まとめてジャンル絞り込みを変更...", EpgCmds.ChgGenre));
            cm_ChangeMenu.Items.Add(new CtxmItemData(cm_Separator));
            cm_ChangeMenu.Items.Add(new CtxmItemData("録画モード", cm_ChgRecmodeMenu));
            cm_ChangeMenu.Items.Add(new CtxmItemData("優先度", cm_ChgPriorityMenu));
            cm_ChangeMenu.Items.Add(new CtxmItemData("イベントリレー追従", cm_ChgRelayMenu));
            cm_ChangeMenu.Items.Add(new CtxmItemData("ぴったり(?)録画", cm_ChgPittariMenu));
            cm_ChangeMenu.Items.Add(new CtxmItemData("チューナー", cm_ChgTunerMenu));
            cm_ChangeMenu.Items.Add(new CtxmItemData("開始マージン", cm_ChgMarginStartMenu));
            cm_ChangeMenu.Items.Add(new CtxmItemData("終了マージン", cm_ChgMarginEndMenu));
            cm_ChangeMenu.Items.Add(new CtxmItemData("録画後動作", cm_ChgRecEndMenu));

            CtxmData ctmd = DefCtxmData[CtxmCode.EditChgMenu];

            ctmd.Items = cm_ChangeMenu.Items;

            //アイテムの復元サブメニュー
            var cm_RestoreMenu = new CtxmItemData("アイテムの復元(仮)", EpgCmdsEx.RestoreMenu);

            cm_RestoreMenu.Items.Add(new CtxmItemData("履歴をクリア(_R)", EpgCmds.RestoreClear));

            //ビューモードサブメニュー
            var cm_ViewMenu = new CtxmItemData("表示モード(仮)", EpgCmdsEx.ViewMenu);

            for (int i = 0; i <= 2; i++)
            {
                cm_ViewMenu.Items.Add(new CtxmItemData(CommonManager.ConvertViewModeText(i)
                                                       + string.Format("(_{0})", i + 1), EpgCmds.ViewChgMode, i));
            }
            cm_ViewMenu.Items.Add(new CtxmItemData(cm_Separator));
            cm_ViewMenu.Items.Add(new CtxmItemData("表示設定(_S)...", EpgCmds.ViewChgSet));
            cm_ViewMenu.Items.Add(new CtxmItemData("一時的な変更をクリア(_R)", EpgCmds.ViewChgReSet));

            //共通メニューの追加用リスト
            var AddAppendTagMenus = new List <CtxmItemData>();

            AddAppendTagMenus.Add(new CtxmItemData("録画タグで予約情報検索", EpgCmds.InfoSearchRecTag));
            AddAppendTagMenus.Add(new CtxmItemData("録画タグをネットで検索", EpgCmds.SearchRecTag));
            AddAppendTagMenus.Add(new CtxmItemData("録画タグをコピー", EpgCmds.CopyRecTag));
            AddAppendTagMenus.Add(new CtxmItemData("録画タグに貼り付け", EpgCmds.SetRecTag));

            var AddAppendMenus = new List <CtxmItemData>();

            AddAppendMenus.Add(new CtxmItemData(cm_Separator));
            AddAppendMenus.Add(new CtxmItemData("番組名をコピー", EpgCmds.CopyTitle));
            AddAppendMenus.Add(new CtxmItemData("番組情報をコピー", EpgCmds.CopyContent));
            AddAppendMenus.Add(new CtxmItemData("番組名で予約情報検索", EpgCmds.InfoSearchTitle));
            AddAppendMenus.Add(new CtxmItemData("番組名をネットで検索", EpgCmds.SearchTitle));

            var AddMenuSetting = new List <CtxmItemData>();

            AddMenuSetting.Add(new CtxmItemData(cm_Separator));
            AddMenuSetting.Add(new CtxmItemData("右クリックメニューの設定...", EpgCmds.MenuSetting));


            //メニューアイテム:予約一覧
            ctmd = DefCtxmData[CtxmCode.ReserveView];
            ctmd.Items.Add(new CtxmItemData("予約←→無効", EpgCmds.ChgOnOff));
            ctmd.Items.Add(new CtxmItemData("変更(_C)", cm_ChangeMenu));
            ctmd.Items.Add(new CtxmItemData("コピーを追加", EpgCmds.CopyItem));
            ctmd.Items.Add(new CtxmItemData("削除", EpgCmds.Delete));
            ctmd.Items.Add(new CtxmItemData("アイテムの復元", cm_RestoreMenu));
            ctmd.Items.Add(new CtxmItemData("新規プログラム予約...", EpgCmds.ShowAddDialog));
            ctmd.Items.Add(new CtxmItemData("チューナー画面へジャンプ", EpgCmds.JumpTuner));
            ctmd.Items.Add(new CtxmItemData("番組表へジャンプ", EpgCmds.JumpTable));
            ctmd.Items.Add(new CtxmItemData("自動予約登録変更", EpgCmdsEx.ShowAutoAddDialogMenu));
            ctmd.Items.Add(new CtxmItemData("番組名でキーワード予約作成...", EpgCmds.ToAutoadd));
            ctmd.Items.Add(new CtxmItemData("追っかけ再生", EpgCmds.Play));
            ctmd.Items.Add(new CtxmItemData("録画フォルダを開く", EpgCmdsEx.OpenFolderMenu));
            ctmd.Items.Add(new CtxmItemData("録画ログを検索(_L)", EpgCmds.SearchRecLog));
            ctmd.Items.AddRange(AddAppendMenus.DeepClone());
            ctmd.Items.AddRange(AddAppendTagMenus.DeepClone());
            ctmd.Items.AddRange(AddMenuSetting.DeepClone());

            //メニューアイテム:使用予定チューナー
            ctmd = DefCtxmData[CtxmCode.TunerReserveView];
            ctmd.Items.Add(new CtxmItemData("予約←→無効", EpgCmds.ChgOnOff));
            ctmd.Items.Add(new CtxmItemData("変更(_C)", cm_ChangeMenu));
            ctmd.Items.Add(new CtxmItemData("コピーを追加", EpgCmds.CopyItem));
            ctmd.Items.Add(new CtxmItemData("削除", EpgCmds.Delete));
            ctmd.Items.Add(new CtxmItemData("アイテムの復元", cm_RestoreMenu));
            ctmd.Items.Add(new CtxmItemData("新規プログラム予約...", EpgCmds.ShowAddDialog));
            ctmd.Items.Add(new CtxmItemData("予約一覧へジャンプ", EpgCmds.JumpReserve));
            ctmd.Items.Add(new CtxmItemData("番組表へジャンプ", EpgCmds.JumpTable));
            ctmd.Items.Add(new CtxmItemData("自動予約登録変更", EpgCmdsEx.ShowAutoAddDialogMenu));
            ctmd.Items.Add(new CtxmItemData("番組名でキーワード予約作成...", EpgCmds.ToAutoadd));
            ctmd.Items.Add(new CtxmItemData("追っかけ再生", EpgCmds.Play));
            ctmd.Items.Add(new CtxmItemData("録画フォルダを開く", EpgCmdsEx.OpenFolderMenu));
            ctmd.Items.Add(new CtxmItemData("録画ログを検索(_L)", EpgCmds.SearchRecLog));
            ctmd.Items.AddRange(AddAppendMenus.DeepClone());
            ctmd.Items.AddRange(AddAppendTagMenus.DeepClone());
            ctmd.Items.AddRange(AddMenuSetting.DeepClone());

            //メニューアイテム:録画済み一覧
            ctmd = DefCtxmData[CtxmCode.RecInfoView];
            ctmd.Items.Add(new CtxmItemData("録画情報...", EpgCmds.ShowDialog));
            ctmd.Items.Add(new CtxmItemData("削除", EpgCmds.Delete));
            ctmd.Items.Add(new CtxmItemData("プロテクト←→解除", EpgCmds.ProtectChange));
            ctmd.Items.Add(new CtxmItemData("番組表へジャンプ", EpgCmds.JumpTable));
            ctmd.Items.Add(new CtxmItemData("自動予約登録変更", EpgCmdsEx.ShowAutoAddDialogMenu));
            ctmd.Items.Add(new CtxmItemData("番組名でキーワード予約作成...", EpgCmds.ToAutoadd));
            ctmd.Items.Add(new CtxmItemData("再生", EpgCmds.Play));
            ctmd.Items.Add(new CtxmItemData("録画フォルダを開く", EpgCmds.OpenFolder));//他の画面と違う
            ctmd.Items.Add(new CtxmItemData("録画ログを検索(_L)", EpgCmds.SearchRecLog));
            ctmd.Items.AddRange(AddAppendMenus.DeepClone());
            ctmd.Items.AddRange(AddMenuSetting.DeepClone());

            //メニューアイテム:キーワード自動予約登録
            ctmd = DefCtxmData[CtxmCode.EpgAutoAddView];
            ctmd.Items.Add(new CtxmItemData("予約一覧(_L)", EpgCmdsEx.ShowReserveDialogMenu));
            ctmd.Items.Add(new CtxmItemData("変更(_C)", cm_ChangeMenu));
            ctmd.Items.Add(new CtxmItemData("コピーを追加", EpgCmds.CopyItem));
            ctmd.Items.Add(new CtxmItemData("削除", EpgCmds.Delete));
            ctmd.Items.Add(new CtxmItemData("予約ごと削除", EpgCmds.Delete2));
            ctmd.Items.Add(new CtxmItemData("予約を自動登録に合わせる", EpgCmds.AdjustReserve));
            ctmd.Items.Add(new CtxmItemData("アイテムの復元", cm_RestoreMenu));
            ctmd.Items.Add(new CtxmItemData("次の予約(予約一覧)へジャンプ", EpgCmds.JumpReserve));
            ctmd.Items.Add(new CtxmItemData("次の予約(チューナー画面)へジャンプ", EpgCmds.JumpTuner));
            ctmd.Items.Add(new CtxmItemData("次の予約(番組表)へジャンプ", EpgCmds.JumpTable));
            ctmd.Items.Add(new CtxmItemData("新規自動予約登録...", EpgCmds.ShowAddDialog));
            ctmd.Items.Add(new CtxmItemData("録画フォルダを開く", EpgCmdsEx.OpenFolderMenu));
            ctmd.Items.Add(new CtxmItemData(cm_Separator));
            ctmd.Items.Add(new CtxmItemData("Andキーワードをコピー", EpgCmds.CopyTitle));
            ctmd.Items.Add(new CtxmItemData("Andキーワードで予約情報検索", EpgCmds.InfoSearchTitle));
            ctmd.Items.Add(new CtxmItemData("Andキーワードをネットで検索", EpgCmds.SearchTitle));
            ctmd.Items.Add(new CtxmItemData("Notキーワードをコピー", EpgCmds.CopyNotKey));
            ctmd.Items.Add(new CtxmItemData("Notキーワードに貼り付け", EpgCmds.SetNotKey));
            ctmd.Items.AddRange(AddAppendTagMenus.DeepClone());
            ctmd.Items.AddRange(AddMenuSetting.DeepClone());

            //メニューアイテム:プログラム自動予約登録
            ctmd = DefCtxmData[CtxmCode.ManualAutoAddView];
            ctmd.Items.Add(new CtxmItemData("予約一覧(_L)", EpgCmdsEx.ShowReserveDialogMenu));
            ctmd.Items.Add(new CtxmItemData("変更(_C)", cm_ChangeMenu));
            ctmd.Items.Add(new CtxmItemData("コピーを追加", EpgCmds.CopyItem));
            ctmd.Items.Add(new CtxmItemData("削除", EpgCmds.Delete));
            ctmd.Items.Add(new CtxmItemData("予約ごと削除", EpgCmds.Delete2));
            ctmd.Items.Add(new CtxmItemData("予約を自動登録に合わせる", EpgCmds.AdjustReserve));
            ctmd.Items.Add(new CtxmItemData("アイテムの復元", cm_RestoreMenu));
            ctmd.Items.Add(new CtxmItemData("次の予約(予約一覧)へジャンプ", EpgCmds.JumpReserve));
            ctmd.Items.Add(new CtxmItemData("次の予約(チューナー画面)へジャンプ", EpgCmds.JumpTuner));
            ctmd.Items.Add(new CtxmItemData("次の予約(番組表)へジャンプ", EpgCmds.JumpTable));
            ctmd.Items.Add(new CtxmItemData("番組名でキーワード予約作成...", EpgCmds.ToAutoadd));
            ctmd.Items.Add(new CtxmItemData("新規自動予約登録...", EpgCmds.ShowAddDialog));
            ctmd.Items.Add(new CtxmItemData("録画フォルダを開く", EpgCmdsEx.OpenFolderMenu));
            ctmd.Items.Add(new CtxmItemData(cm_Separator));
            ctmd.Items.Add(new CtxmItemData("番組名をコピー", EpgCmds.CopyTitle));
            ctmd.Items.Add(new CtxmItemData("番組名で予約情報検索", EpgCmds.InfoSearchTitle));
            ctmd.Items.Add(new CtxmItemData("番組名をネットで検索", EpgCmds.SearchTitle));
            ctmd.Items.AddRange(AddAppendTagMenus.DeepClone());
            ctmd.Items.AddRange(AddMenuSetting.DeepClone());

            //メニューアイテム:番組表
            ctmd = DefCtxmData[CtxmCode.EpgView];
            ctmd.Items.Add(new CtxmItemData("簡易予約/予約←→無効", EpgCmds.ChgOnOff));
            ctmd.Items.Add(new CtxmItemData("予約追加(_A)", cm_AddMenu));
            ctmd.Items.Add(new CtxmItemData("変更(_C)", cm_ChangeMenu));
            ctmd.Items.Add(new CtxmItemData("コピーを追加", EpgCmds.CopyItem));
            ctmd.Items.Add(new CtxmItemData("削除", EpgCmds.Delete));
            ctmd.Items.Add(new CtxmItemData("アイテムの復元", cm_RestoreMenu));
            ctmd.Items.Add(new CtxmItemData("予約一覧へジャンプ", EpgCmds.JumpReserve));
            ctmd.Items.Add(new CtxmItemData("録画済み一覧へジャンプ", EpgCmds.JumpRecInfo));
            ctmd.Items.Add(new CtxmItemData("チューナー画面へジャンプ", EpgCmds.JumpTuner));
            ctmd.Items.Add(new CtxmItemData("番組表(標準モード)へジャンプ", EpgCmds.JumpTable));
            ctmd.Items.Add(new CtxmItemData("自動予約登録変更", EpgCmdsEx.ShowAutoAddDialogMenu));
            ctmd.Items.Add(new CtxmItemData("番組名でキーワード予約作成...", EpgCmds.ToAutoadd));
            ctmd.Items.Add(new CtxmItemData("追っかけ再生", EpgCmds.Play, 0));
            ctmd.Items.Add(new CtxmItemData("録画済み再生", EpgCmds.Play, 1));
            ctmd.Items.Add(new CtxmItemData("録画フォルダを開く", EpgCmdsEx.OpenFolderMenu));
            ctmd.Items.Add(new CtxmItemData("録画ログを検索(_L)", EpgCmds.SearchRecLog));
            ctmd.Items.AddRange(AddAppendMenus.DeepClone());
            ctmd.Items.AddRange(AddAppendTagMenus.DeepClone());
            ctmd.Items.Add(new CtxmItemData(cm_Separator));
            ctmd.Items.Add(new CtxmItemData("表示モード(_V)", cm_ViewMenu));
            ctmd.Items.AddRange(AddMenuSetting.DeepClone());

            //メニューアイテム:検索ダイアログ、キーワード予約ダイアログ
            ctmd = DefCtxmData[CtxmCode.SearchWindow];
            ctmd.Items.Add(new CtxmItemData("簡易予約/予約←→無効", EpgCmds.ChgOnOff));
            ctmd.Items.Add(new CtxmItemData("予約追加(_A)", cm_AddMenu));
            ctmd.Items.Add(new CtxmItemData("変更(_C)", cm_ChangeMenu));
            ctmd.Items.Add(new CtxmItemData("コピーを追加", EpgCmds.CopyItem));
            ctmd.Items.Add(new CtxmItemData("削除", EpgCmds.Delete));
            ctmd.Items.Add(new CtxmItemData("アイテムの復元", cm_RestoreMenu));
            ctmd.Items.Add(new CtxmItemData("予約一覧へジャンプ", EpgCmds.JumpReserve));
            ctmd.Items.Add(new CtxmItemData("録画済み一覧へジャンプ", EpgCmds.JumpRecInfo));
            ctmd.Items.Add(new CtxmItemData("チューナー画面へジャンプ", EpgCmds.JumpTuner));
            ctmd.Items.Add(new CtxmItemData("番組表へジャンプ", EpgCmds.JumpTable));
            ctmd.Items.Add(new CtxmItemData("自動予約登録変更", EpgCmdsEx.ShowAutoAddDialogMenu));
            ctmd.Items.Add(new CtxmItemData("番組名で再検索", EpgCmds.ReSearch));
            ctmd.Items.Add(new CtxmItemData("番組名で再検索(別ウィンドウ)", EpgCmds.ReSearch2));
            ctmd.Items.Add(new CtxmItemData("追っかけ再生", EpgCmds.Play, 0));
            ctmd.Items.Add(new CtxmItemData("録画済み再生", EpgCmds.Play, 1));
            ctmd.Items.Add(new CtxmItemData("録画フォルダを開く", EpgCmdsEx.OpenFolderMenu));
            ctmd.Items.Add(new CtxmItemData("録画ログを検索(_L)", EpgCmds.SearchRecLog));
            ctmd.Items.Add(new CtxmItemData("ジャンル登録(_G)", EpgCmds.SetGenre));
            ctmd.Items.AddRange(AddAppendMenus.DeepClone());
            ctmd.Items.AddRange(AddAppendTagMenus.DeepClone());
            ctmd.Items.AddRange(AddMenuSetting.DeepClone());

            //メニューアイテム:予約情報検索(デフォルト・複数選択)
            ctmd = DefCtxmData[CtxmCode.InfoSearchWindow];
            ctmd.Items.Add(new CtxmItemData("一覧へジャンプ", EpgCmds.JumpListView));
            ctmd.Items.Add(new CtxmItemData("番組名/ANDキーワードで再検索", EpgCmds.ReSearch));
            ctmd.Items.Add(new CtxmItemData("番組名/ANDキーワードで再検索(別ウィンドウ)", EpgCmds.ReSearch2));
            ctmd.Items.Add(new CtxmItemData(cm_Separator));
            ctmd.Items.Add(new CtxmItemData("ダイアログ表示...", EpgCmds.ShowDialog));
            ctmd.Items.Add(new CtxmItemData("有効・無効/プロテクト切替え", EpgCmds.ChgOnOff));
            ctmd.Items.Add(new CtxmItemData("削除", EpgCmds.Delete));
            ctmd.Items.Add(new CtxmItemData("アイテムの復元", cm_RestoreMenu));
            ctmd.Items.Add(new CtxmItemData(cm_Separator));
            ctmd.Items.Add(new CtxmItemData("番組名/ANDキーワードをコピー", EpgCmds.CopyTitle));
            ctmd.Items.Add(new CtxmItemData("番組名/ANDキーワードをネットで検索", EpgCmds.SearchTitle));
            ctmd.Items.AddRange(AddAppendTagMenus.DeepClone());
            ctmd.Items.AddRange(AddMenuSetting.DeepClone());

            //メニューアイテム:予約情報検索(個別選択の追加メニュー)
            AddInfoSearchMenu = new CtxmData(CtxmCode.InfoSearchWindow);
            AddInfoSearchMenu.Items.AddRange(ctmd.Items.Take(3));
        }
예제 #3
0
        public string ConvertRecSettingText()
        {
            if (RecSettingInfo == null)
            {
                return("");
            }
            //
            string view = "録画有効 : " + RecEnabled + "\r\n";

            view += "録画モード : " + RecMode + "\r\n";
            view += "優先度 : " + Priority + "\r\n";
            view += "追従 : " + Tuijyu + "\r\n";
            view += "ぴったり(?): " + Pittari + "\r\n";
            view += "指定サービス対象データ : 字幕含" + (RecSettingInfo.ServiceCaptionActual ? "める" : "めない")
                    + " データカルーセル含" + (RecSettingInfo.ServiceDataActual ? "める" : "めない")
                    + (RecSettingInfo.ServiceModeIsDefault ? " (デフォルト)" : "") + "\r\n";
            view += "録画実行bat : " + (RecSettingInfo.BatFilePath == "" ? "なし" : RecSettingInfo.BatFilePath) + "\r\n";
            {
                List <RecFileSetInfo> recFolderList = RecSettingInfo.RecFolderList;
                view += "録画フォルダ : " + (recFolderList.Count == 0 ? "(デフォルト)" : "") + "\r\n";
                if (recFolderList.Count == 0)
                {
                    string plugInFile = IniFileHandler.GetPrivateProfileString("SET", "RecNamePlugInFile", "RecName_Macro.dll", SettingPath.TimerSrvIniPath);
                    foreach (string info in Settings.Instance.DefRecFolders)
                    {
                        view += info + " (WritePlugIn:Write_Default.dll ファイル名PlugIn:" + plugInFile + ")\r\n";
                    }
                }
                else
                {
                    foreach (RecFileSetInfo info in RecSettingInfo.RecFolderList)
                    {
                        view += info.RecFolder + " (WritePlugIn:" + info.WritePlugIn + " ファイル名PlugIn:" + info.RecNamePlugIn + ")\r\n";
                    }
                }
            }
            view += "録画タグ : " + RecSettingInfo.RecTag + "\r\n";
            view += "録画マージン : 開始 " + RecSettingInfo.StartMarginActual.ToString() +
                    " 終了 " + RecSettingInfo.EndMarginActual.ToString()
                    + (RecSettingInfo.IsMarginDefault == true ? " (デフォルト)" : "") + "\r\n";

            view += "録画後動作 : " + CommonManager.ConvertRecEndModeText(RecSettingInfo.RecEndModeActual)
                    + (RecSettingInfo.RebootFlagActual == 1 ? " 復帰後再起動する" : "")
                    + (RecSettingInfo.RecEndIsDefault == true ? " (デフォルト)" : "") + "\r\n";

            if (RecSettingInfo.PartialRecFlag == 0)
            {
                view += "部分受信 : 同時出力なし\r\n";
            }
            else
            {
                view += "部分受信 : 同時出力あり\r\n";
                view += "部分受信 録画フォルダ : \r\n";
                foreach (RecFileSetInfo info in RecSettingInfo.PartialRecFolder)
                {
                    view += info.RecFolder + " (WritePlugIn:" + info.WritePlugIn + " ファイル名PlugIn:" + info.RecNamePlugIn + ")\r\n";
                }
            }
            view += "連続録画動作 : " + (RecSettingInfo.ContinueRecFlag == 0 ? "分割" : "同一ファイル出力") + "\r\n";
            view += "使用チューナー強制指定 : " + TunerID;

            return(view);
        }