public void ShowMenu(DVD_MENU_ID menuId)
        {
            var dvdFilterGraph = _filterGraph as IDvdFilterGraph;

            if (dvdFilterGraph != null)
            {
                dvdFilterGraph.ShowMenu(menuId);
            }
        }
 public void ShowMenu(DVD_MENU_ID menuId)
 {
     _mediaControl.ShowMenu(menuId);
 }
 public HRESULT MenuCall(DVD_MENU_ID MenuID)
 {
     return(((delegate * unmanaged <IDvdControl *, DVD_MENU_ID, int>)(lpVtbl[15]))((IDvdControl *)Unsafe.AsPointer(ref this), MenuID));
 }
 public void ShowMenu(DVD_MENU_ID menuID)
 {
     MediaEngine.ShowMenu(menuID);
 }
        protected override void UpdateMenu()
        {
            _engineReady = true;

            _dvdMenuItems.Clear();
            DvdMenuVisible = false;

            if (_engine.SourceType == SourceType.Dvd)
            {
                var command = new GenericRelayCommand <NumberedMenuItemData>(
                    data =>
                {
                    if (data != null)
                    {
                        _engine.ShowMenu((DVD_MENU_ID)data.Number);
                    }
                },
                    data =>
                {
                    var enabled = false;

                    if (data != null)
                    {
                        VALID_UOP_FLAG uops = _engine.UOPS;
                        DVD_MENU_ID id      = (DVD_MENU_ID)data.Number;
                        switch (id)
                        {
                        case DVD_MENU_ID.DVD_MENU_Title:
                            enabled = (uops & VALID_UOP_FLAG.UOP_FLAG_ShowMenu_Title) == 0;
                            break;

                        case DVD_MENU_ID.DVD_MENU_Root:
                            enabled = (uops & VALID_UOP_FLAG.UOP_FLAG_ShowMenu_Root) == 0;
                            break;

                        case DVD_MENU_ID.DVD_MENU_Subpicture:
                            enabled = (uops & VALID_UOP_FLAG.UOP_FLAG_ShowMenu_SubPic) == 0;
                            break;

                        case DVD_MENU_ID.DVD_MENU_Audio:
                            enabled = (uops & VALID_UOP_FLAG.UOP_FLAG_ShowMenu_Audio) == 0;
                            break;

                        case DVD_MENU_ID.DVD_MENU_Angle:
                            enabled = (uops & VALID_UOP_FLAG.UOP_FLAG_ShowMenu_Angle) == 0;
                            break;

                        case DVD_MENU_ID.DVD_MENU_Chapter:
                            enabled = (uops & VALID_UOP_FLAG.UOP_FLAG_ShowMenu_Chapter) == 0;
                            break;
                        }
                    }

                    return(enabled);
                });

                _dvdMenuItems.Add(new LeafItem <NumberedMenuItemData>(Resources.Resources.mi_title_menu,
                                                                      new NumberedMenuItemData((int)DVD_MENU_ID.DVD_MENU_Title), command));

                _dvdMenuItems.Add(new LeafItem <NumberedMenuItemData>(Resources.Resources.mi_root_menu,
                                                                      new NumberedMenuItemData((int)DVD_MENU_ID.DVD_MENU_Root), command));

                _dvdMenuItems.Add(new LeafItem <NumberedMenuItemData>(Resources.Resources.mi_subpicture_menu,
                                                                      new NumberedMenuItemData((int)DVD_MENU_ID.DVD_MENU_Subpicture), command));

                _dvdMenuItems.Add(new LeafItem <NumberedMenuItemData>(Resources.Resources.mi_audio_menu,
                                                                      new NumberedMenuItemData((int)DVD_MENU_ID.DVD_MENU_Audio), command));

                _dvdMenuItems.Add(new LeafItem <NumberedMenuItemData>(Resources.Resources.mi_angle_menu,
                                                                      new NumberedMenuItemData((int)DVD_MENU_ID.DVD_MENU_Angle), command));

                _dvdMenuItems.Add(new LeafItem <NumberedMenuItemData>(Resources.Resources.mi_chapter_menu,
                                                                      new NumberedMenuItemData((int)DVD_MENU_ID.DVD_MENU_Chapter), command));

                DvdMenuVisible = true;
            }
        }
Example #6
0
 public int ShowMenu(DVD_MENU_ID MenuID, [NativeTypeName("DWORD")] uint dwFlags, IDvdCmd **ppCmd)
 {
     return(((delegate * unmanaged <IDvdControl2 *, DVD_MENU_ID, uint, IDvdCmd **, int>)(lpVtbl[15]))((IDvdControl2 *)Unsafe.AsPointer(ref this), MenuID, dwFlags, ppCmd));
 }