public CommandActionsEntryPoint(ICommandManager commandManager, ITheaterApplicationHost appHost, IPresenter presentationManager, IPlaybackManager playbackManager, INavigator navigationService, /*IScreensaverManager screensaverManager,*/ ILogManager logManager, IEventAggregator events) { _commandManager = commandManager; _defaultCommandActionMap = new DefaultCommandActionMap(appHost, presentationManager, playbackManager, navigationService, /*screensaverManager,*/ logManager, events); _logger = logManager.GetLogger(GetType().Name); }
public PageContentViewModel(INavigationService navigationService, ISessionManager sessionManager, IPlaybackManager playbackManager, ILogger logger, ITheaterApplicationHost appHost, IApiClient apiClient, IPresentationManager presentationManager, IServerEvents serverEvents) { NavigationService = navigationService; SessionManager = sessionManager; PlaybackManager = playbackManager; Logger = logger; AppHost = appHost; ApiClient = apiClient; PresentationManager = presentationManager; ServerEvents = serverEvents; MasterCommands = new MasterCommandsViewModel(navigationService, sessionManager, presentationManager, apiClient, logger, appHost, serverEvents); NavigationService.Navigated += NavigationServiceNavigated; SessionManager.UserLoggedIn += SessionManagerUserLoggedIn; SessionManager.UserLoggedOut += SessionManagerUserLoggedOut; PlaybackManager.PlaybackStarted += PlaybackManager_PlaybackStarted; PlaybackManager.PlaybackCompleted += PlaybackManager_PlaybackCompleted; _dispatcher = Dispatcher.CurrentDispatcher; _clockTimer = new Timer(ClockTimerCallback, null, 0, 10000); IsLoggedIn = SessionManager.CurrentUser != null; var page = NavigationService.CurrentPage; IsOnHomePage = page is IHomePage; IsOnFullscreenVideo = page is IFullscreenVideoPage; }
public WindowManager(INavigator navigator, IInternalPlayerWindowManager internalPlayerWindowManager, ILogManager logManager, ITheaterApplicationHost appHost) { _navigator = navigator; _internalPlayerWindowManager = internalPlayerWindowManager; _appHost = appHost; _logger = logManager.GetLogger("WindowManager"); }
public RootContext(ITheaterApplicationHost appHost, INavigator navigator, ISessionManager sessionManager, ILogManager logManager) : base(appHost) { _appHost = appHost; _navigator = navigator; _sessionManager = sessionManager; _logger = logManager.GetLogger("RootContext"); // create root navigation bindings Binder.Bind<LoginPath, LoginContext>(); Binder.Bind<HomePath, HomeContext>(); Binder.Bind<SideMenuPath, SideMenuContext>(); Binder.Bind<FullScreenPlaybackPath, FullScreenPlaybackContext>(); Binder.Bind<ItemListPath>(async path => { var context = appHost.CreateInstance(typeof (ItemListContext)) as ItemListContext; context.Parameters = path.Parameter; return context; }); Binder.Bind<ItemPath>(async path => { var context = appHost.CreateInstance(typeof (ItemDetailsContext)) as ItemDetailsContext; context.Item = path.Parameter; return context; }); }
public CommandBarViewModel(ITheaterApplicationHost appHost, INavigator navigator) { _navigator = navigator; _commands = appHost.GetExports<IGlobalMenuCommand>().ToList(); CommandViewModels = new ObservableCollection<GlobalCommandViewModel>(); _navigator.Navigated += (s, e) => UpdateCommandVisibility(); }
public SideMenuContext(ITheaterApplicationHost appHost, IPresenter presenter, ISessionManager sessionManager, IImageManager imageManager, IApiClient apiClient) : base(appHost) { _appHost = appHost; _presenter = presenter; _sessionManager = sessionManager; _imageManager = imageManager; _apiClient = apiClient; }
public DefaultThemePageMasterCommandsViewModel(INavigationService navigationService, ISessionManager sessionManager, IPresentationManager presentationManager, IApiClient apiClient, ILogger logger, ITheaterApplicationHost appHost, IServerEvents serverEvents, IImageManager imageManager) : base(navigationService, sessionManager, presentationManager, apiClient, logger, appHost, serverEvents) { ImageManager = imageManager; UserCommand = new RelayCommand(i => ShowUserMenu()); LogoutCommand = new RelayCommand(i => Logout()); PowerOptionsEnabled = true; }
public FullScreenPlaybackContext(ITheaterApplicationHost appHost, IPlaybackManager playbackManager, IApiClient apiClient, IImageManager imageManager, IPresenter presentationManager, ILogManager logManager, INavigator nav, IServerEvents serverEvents, IEventAggregator events) : base(appHost) { _logger = logManager.GetLogger("OSD"); _playbackManager = playbackManager; _apiClient = apiClient; _imageManager = imageManager; _presentationManager = presentationManager; _nav = nav; _serverEvents = serverEvents; _events = events; }
public DefaultTheme(IPlaybackManager playbackManager, IImageManager imageManager, INavigationService navService, ISessionManager sessionManager, IPresentationManager presentationManager, ILogManager logManager, ITheaterApplicationHost appHost, ITheaterConfigurationManager config, IConnectionManager connectionManager) { Current = this; _playbackManager = playbackManager; _imageManager = imageManager; _navService = navService; _sessionManager = sessionManager; _presentationManager = presentationManager; _appHost = appHost; _config = config; _connectionManager = connectionManager; _logger = logManager.GetLogger(GetType().Name); }
public DefaultThemePageContentViewModel(INavigationService navigationService, ISessionManager sessionManager, IApiClient apiClient, IImageManager imageManager, IPresentationManager presentation, IPlaybackManager playbackManager, ILogger logger, ITheaterApplicationHost appHost, IServerEvents serverEvents, ITheaterConfigurationManager config) : base(navigationService, sessionManager, playbackManager, logger, appHost, apiClient, presentation, serverEvents) { _imageManager = imageManager; _config = config; MasterCommands = new DefaultThemePageMasterCommandsViewModel(navigationService, sessionManager, presentation, apiClient, logger, appHost, serverEvents, imageManager); NavigationService.Navigated += NavigationService_Navigated; SessionManager.UserLoggedIn += SessionManager_UserLoggedIn; SessionManager.UserLoggedOut += SessionManager_UserLoggedOut; _config.UserConfigurationUpdated += _config_UserConfigurationUpdated; }
public RootViewModel(IEventAggregator events, INavigator navigator, ITheaterApplicationHost appHost, IServerConnectionManager serverManager, RootContext rootContext) { _navigator = navigator; _serverManager = serverManager; _rootContext = rootContext; Notifications = new NotificationTrayViewModel(events); Commands = new CommandBarViewModel(appHost, navigator); Clock = new ClockViewModel(); IsInFocus = true; events.Get<ShowPageEvent>().Subscribe(message => ActivePage = message.ViewModel); events.Get<PlaybackStopEventArgs>().Subscribe(message => IsInternalMediaPlaying = false); events.Get<PlaybackStartEventArgs>().Subscribe(message => { if (message.Player is IInternalMediaPlayer && message.Player is IVideoPlayer && message.Options.Items[0].IsVideo) { IsInternalMediaPlaying = true; } }); }
public SideMenuViewModel(ITheaterApplicationHost appHost, ISessionManager sessionManager, IImageManager imageManager, IApiClient apiClient) { _sessionManager = sessionManager; Users = new SideMenuUsersViewModel(sessionManager, imageManager, apiClient); CommandGroups = new RangeObservableCollection<SideMenuGroupViewModel>(); UserCommandGroups = new RangeObservableCollection<SideMenuGroupViewModel>(); IEnumerable<IMenuCommand> commands = appHost.GetExports<IMenuCommand>().ToList(); IEnumerable<IGrouping<MenuCommandGroup, IMenuCommand>> commandGroups = commands.Where(c => c.Group != MenuCommandGroup.User).Where(c => !(c is IGlobalMenuCommand)).GroupBy(c => c.Group); CommandGroups.AddRange(commandGroups.OrderBy(g => g.Key.SortOrder).Select(g => new SideMenuGroupViewModel(g))); IEnumerable<IGrouping<MenuCommandGroup, IMenuCommand>> userCommandGroups = commands.Where(c => c.Group == MenuCommandGroup.User).Where(c => !(c is IGlobalMenuCommand)).GroupBy(c => c.Group); UserCommandGroups.AddRange(userCommandGroups.OrderBy(g => g.Key.SortOrder).Select(g => new SideMenuGroupViewModel(g))); sessionManager.UserLoggedIn += UserChanged; sessionManager.UserLoggedOut += UserChanged; }
public HomeViewModel(ITheaterApplicationHost appHost) { var pageGenerators = appHost.GetExports<IHomePageGenerator>(); Pages = pageGenerators.SelectMany(p => p.GetHomePages()).ToList(); }
public DefaultThemePageMasterCommandsViewModel(INavigationService navigationService, ISessionManager sessionManager, IPresentationManager presentationManager, IApiClient apiClient, ILogger logger, ITheaterApplicationHost appHost, IServerEvents serverEvents, IImageManager imageManager, ITheaterConfigurationManager configurationManager) : base(navigationService, sessionManager, presentationManager, apiClient, logger, appHost, serverEvents) { ImageManager = imageManager; ConfigurationManager = configurationManager; UserCommand = new RelayCommand(i => ShowUserMenu()); LogoutCommand = new RelayCommand(i => Logout()); PowerOptionsEnabled = true; }
public DefaultThemePageContentViewModel(INavigationService navigationService, ISessionManager sessionManager, IApiClient apiClient, IImageManager imageManager, IPresentationManager presentation, IPlaybackManager playbackManager, ILogger logger, ITheaterApplicationHost appHost, IServerEvents serverEvents, ITheaterConfigurationManager config) : base(navigationService, sessionManager, playbackManager, logger, appHost, apiClient, presentation, serverEvents) { _imageManager = imageManager; _config = config; MasterCommands = new DefaultThemePageMasterCommandsViewModel(navigationService, sessionManager, presentation, apiClient, logger, appHost, serverEvents, imageManager, config); NavigationService.Navigated += NavigationService_Navigated; SessionManager.UserLoggedIn += SessionManager_UserLoggedIn; SessionManager.UserLoggedOut += SessionManager_UserLoggedOut; _config.UserConfigurationUpdated += _config_UserConfigurationUpdated; }
public HomeContext(ITheaterApplicationHost appHost, IPresenter presenter) : base(appHost) { _appHost = appHost; _presenter = presenter; }
public ExitMenuCommand(ITheaterApplicationHost appHost) { ExecuteCommand = new RelayCommand(arg => appHost.Shutdown()); }
public MasterCommandsViewModel(INavigationService navigationService, ISessionManager sessionManager, IPresentationManager presentationManager, IConnectionManager connectionManager, ILogger logger, ITheaterApplicationHost appHost) { Dispatcher = Dispatcher.CurrentDispatcher; NavigationService = navigationService; SessionManager = sessionManager; PresentationManager = presentationManager; ConnectionManager = connectionManager; Logger = logger; AppHost = appHost; AppHost.HasPendingRestartChanged += AppHostHasPendingRestartChanged; SessionManager.UserLoggedIn += SessionManager_UserLoggedIn; SessionManager.UserLoggedOut += SessionManager_UserLoggedOut; NavigationService.Navigated += NavigationService_Navigated; HomeCommand = new RelayCommand(i => GoHome()); SearchCommand = new RelayCommand(i => GoSearch()); FullscreenVideoCommand = new RelayCommand(i => NavigationService.NavigateToInternalPlayerPage()); SettingsCommand = new RelayCommand(i => GoSettings()); GoBackCommand = new RelayCommand(i => GoBack()); RestartServerCommand = new RelayCommand(i => { }); //RestartServerCommand = new RelayCommand(i => RestartServer()); RestartApplicationCommand = new RelayCommand(i => RestartApplication()); ShutdownApplicationCommand = new RelayCommand(i => ShutdownApplication()); ShutdownSystemCommand = new RelayCommand(i => appHost.ShutdownSystem()); RestartSystemCommand = new RelayCommand(i => appHost.RebootSystem()); SleepSystemCommand = new RelayCommand(i => appHost.SetSystemToSleep()); RefreshRestartServerNotification(); }
public MasterCommandsViewModel(INavigationService navigationService, ISessionManager sessionManager, IPresentationManager presentationManager, IApiClient apiClient, ILogger logger, ITheaterApplicationHost appHost, IServerEvents serverEvents) { Dispatcher = Dispatcher.CurrentDispatcher; NavigationService = navigationService; SessionManager = sessionManager; PresentationManager = presentationManager; ApiClient = apiClient; Logger = logger; AppHost = appHost; ServerEvents = serverEvents; ServerEvents.RestartRequired += ServerEvents_RestartRequired; ServerEvents.ServerRestarting += ServerEvents_ServerRestarting; ServerEvents.ServerShuttingDown += ServerEvents_ServerShuttingDown; ServerEvents.Connected += ServerEvents_Connected; AppHost.HasPendingRestartChanged += AppHostHasPendingRestartChanged; SessionManager.UserLoggedIn += SessionManager_UserLoggedIn; SessionManager.UserLoggedOut += SessionManager_UserLoggedOut; NavigationService.Navigated += NavigationService_Navigated; HomeCommand = new RelayCommand(i => GoHome()); SearchCommand = new RelayCommand(i => GoSearch()); FullscreenVideoCommand = new RelayCommand(i => NavigationService.NavigateToInternalPlayerPage()); SettingsCommand = new RelayCommand(i => GoSettings()); GoBackCommand = new RelayCommand(i => GoBack()); RestartServerCommand = new RelayCommand(i => RestartServer()); RestartApplicationCommand = new RelayCommand(i => RestartApplication()); ShutdownApplicationCommand = new RelayCommand(i => ShutdownApplication()); ShutdownSystemCommand = new RelayCommand(i => appHost.ShutdownSystem()); RestartSystemCommand = new RelayCommand(i => appHost.RebootSystem()); SleepSystemCommand = new RelayCommand(i => appHost.SetSystemToSleep()); RefreshRestartServerNotification(); }