protected virtual void SetView(int selectedViewId) { bool isVideoWindow = (this.GetID == (int)Window.WINDOW_VIDEOS || this.GetID == (int)Window.WINDOW_VIDEO_TITLE); switch (selectedViewId) { case 0: // Shares { int nNewWindow; if (isVideoWindow) { nNewWindow = (int)Window.WINDOW_VIDEOS; } else { nNewWindow = (int)Window.WINDOW_MUSIC_FILES; } StateBase.StartWindow = nNewWindow; if (nNewWindow != GetID) { if (isVideoWindow) { MediaPortal.GUI.Video.GUIVideoFiles.Reset(); } GUIWindowManager.ReplaceWindow(nNewWindow); } } break; case 4540: // Now playing { int nPlayingNowWindow = (int)Window.WINDOW_MUSIC_PLAYING_NOW; MediaPortal.GUI.Music.GUIMusicPlayingNow guiPlayingNow = (MediaPortal.GUI.Music.GUIMusicPlayingNow)GUIWindowManager.GetWindow(nPlayingNowWindow); if (guiPlayingNow != null) { guiPlayingNow.MusicWindow = (MediaPortal.GUI.Music.GUIMusicBaseWindow) this; GUIWindowManager.ActivateWindow(nPlayingNowWindow); } } break; default: // a db view { ViewDefinition selectedView = (ViewDefinition)handler.Views[selectedViewId - 1]; handler.CurrentView = selectedView.Name; StateBase.View = selectedView.Name; int nNewWindow; if (isVideoWindow) { nNewWindow = (int)Window.WINDOW_VIDEO_TITLE; // Reset search variables if (GUIVideoTitle.CurrentViewHistory != handler.CurrentLevelWhere) { GUIVideoTitle.IsActorSearch = false; GUIVideoTitle.IsMovieSearch = false; GUIVideoTitle.ActorSearchString = string.Empty; GUIVideoTitle.MovieSearchString = string.Empty; GUIVideoTitle.MovieSearchDbFieldString = string.Empty; } } else { nNewWindow = (int)Window.WINDOW_MUSIC_GENRE; } if (GetID != nNewWindow) { StateBase.StartWindow = nNewWindow; if (nNewWindow != GetID) { GUIWindowManager.ReplaceWindow(nNewWindow); } } else { LoadDirectory(string.Empty); if (facadeLayout.Count <= 0) { GUIControl.FocusControl(GetID, btnLayouts.GetID); } } } break; } }
protected virtual void OnShowViews() { GUIDialogMenu dlg = (GUIDialogMenu)GUIWindowManager.GetWindow((int)Window.WINDOW_DIALOG_MENU); if (dlg == null) { return; } dlg.Reset(); dlg.SetHeading(499); // Views menu dlg.AddLocalizedString(134); // Shares foreach (ViewDefinition view in handler.Views) { dlg.Add(view.LocalizedName); } bool isVideoWindow = (this.GetID == (int)Window.WINDOW_VIDEOS || this.GetID == (int)Window.WINDOW_VIDEO_TITLE); // set the focus to currently used view if (this.GetID == (int)Window.WINDOW_VIDEOS || this.GetID == (int)Window.WINDOW_MUSIC_FILES) { dlg.SelectedLabel = 0; } else if (this.GetID == (int)Window.WINDOW_VIDEO_TITLE || this.GetID == (int)Window.WINDOW_MUSIC_GENRE) { dlg.SelectedLabel = handler.CurrentViewIndex + 1; } // show dialog and wait for result dlg.DoModal(GetID); if (dlg.SelectedId == -1) { return; } switch (dlg.SelectedId) { case 134: // Shares { int nNewWindow; if (isVideoWindow) { nNewWindow = (int)Window.WINDOW_VIDEOS; } else { nNewWindow = (int)Window.WINDOW_MUSIC_FILES; } StateBase.StartWindow = nNewWindow; if (nNewWindow != GetID) { if (isVideoWindow) { MediaPortal.GUI.Video.GUIVideoFiles.Reset(); } GUIWindowManager.ReplaceWindow(nNewWindow); } } break; case 4540: // Now playing { int nPlayingNowWindow = (int)Window.WINDOW_MUSIC_PLAYING_NOW; MediaPortal.GUI.Music.GUIMusicPlayingNow guiPlayingNow = (MediaPortal.GUI.Music.GUIMusicPlayingNow)GUIWindowManager.GetWindow(nPlayingNowWindow); if (guiPlayingNow != null) { guiPlayingNow.MusicWindow = (MediaPortal.GUI.Music.GUIMusicBaseWindow) this; GUIWindowManager.ActivateWindow(nPlayingNowWindow); } } break; default: // a db view { ViewDefinition selectedView = (ViewDefinition)handler.Views[dlg.SelectedLabel - 1]; handler.CurrentView = selectedView.Name; StateBase.View = selectedView.Name; int nNewWindow; if (isVideoWindow) { nNewWindow = (int)Window.WINDOW_VIDEO_TITLE; } else { nNewWindow = (int)Window.WINDOW_MUSIC_GENRE; } if (GetID != nNewWindow) { StateBase.StartWindow = nNewWindow; if (nNewWindow != GetID) { GUIWindowManager.ReplaceWindow(nNewWindow); } } else { LoadDirectory(string.Empty); if (facadeLayout.Count <= 0) { GUIControl.FocusControl(GetID, btnLayouts.GetID); } } } break; } }