public AccountCollection(IAccountRepository accountRepository, IEventAggregator eventAggregator) { _accountRepository = accountRepository; _gate = new object(); eventAggregator.Get <Event <ProfileChanged> >().Subscribe(e => OnAccountChanged(e.AccountName)); eventAggregator.Get <Event <ProfileCollectionChanged> >().Subscribe(e => OnAccountChanged(e.AccountName)); eventAggregator.Get <Event <AccountCollectionCreated> >().Raise(new AccountCollectionCreated(this)); }
public PluginRuntime(IPluginPersister pluginPersister, EventAggregator eventAggregator, ITpBus bus) { _pluginPersister = pluginPersister; _eventAggregator = eventAggregator; _bus = bus; _eventAggregator.Get <Event <AccountCollectionCreated> >().Subscribe(OnAccountCollectionCreated); _eventAggregator.Get <Event <ProfileChanged> >().Subscribe(OnProfileChanged); }
public PluginRuntime(IPluginPersister pluginPersister, EventAggregator eventAggregator, ITpBus bus) { _pluginPersister = pluginPersister; _eventAggregator = eventAggregator; _bus = bus; _eventAggregator.Get<Event<AccountCollectionCreated>>().Subscribe(OnAccountCollectionCreated); _eventAggregator.Get<Event<ProfileChanged>>().Subscribe(OnProfileChanged); }
public AccountCollection(IAccountRepository accountRepository, IEventAggregator eventAggregator) { _accountRepository = accountRepository; _gate = new object(); eventAggregator.Get<Event<ProfileChanged>>().Subscribe(e => OnAccountChanged(e.AccountName)); eventAggregator.Get<Event<ProfileCollectionChanged>>().Subscribe(e => OnAccountChanged(e.AccountName)); eventAggregator.Get<Event<AccountCollectionCreated>>().Raise(new AccountCollectionCreated(this)); }
public PlaybackManager(ITheaterConfigurationManager configurationManager, ILogger logger, IApiClient apiClient, INavigator nav, IPresenter presentationManager, IEventAggregator events) { _configurationManager = configurationManager; _logger = logger; _apiClient = apiClient; _nav = nav; _presentationManager = presentationManager; _playbackStart = events.Get<PlaybackStartEventArgs>(); _playbackStop = events.Get<PlaybackStopEventArgs>(); }
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 OsdViewModel(IPlaybackManager playbackManager, IApiClient apiClient, IImageManager imageManager, IPresenter presentationManager, ILogger logger, INavigator nav, IServerEvents serverEvents, IEventAggregator events) { Logger = logger; PresentationManager = presentationManager; ImageManager = imageManager; ApiClient = apiClient; PlaybackManager = playbackManager; NavigationService = nav; _serverEvents = serverEvents; PauseCommand = new RelayCommand(Pause); StopCommand = new RelayCommand(Stop); SkipBackwardCommand = new RelayCommand(SkipBackward); SkipForwardCommand = new RelayCommand(SkipForward); NextChapterCommand = new RelayCommand(NextChapter); PreviousChapterCommand = new RelayCommand(PreviousChapter); PlayCommand = new RelayCommand(Play); PlayPauseCommand = new RelayCommand(PlayPause); _playbackStopHandler = args => NavigationService.Back(); _playbackStartHandler = args => { MediaPlayer = args.Player; NowPlayingItem = args.Player.CurrentMedia; }; events.Get<PlaybackStopEventArgs>().Subscribe(_playbackStopHandler, true); events.Get<PlaybackStartEventArgs>().Subscribe(_playbackStartHandler, true); MediaPlayer = playbackManager.MediaPlayers.FirstOrDefault(i => i.PlayState != PlayState.Idle); PresentationOptions = new RootPresentationOptions { IsFullScreenPage = true, ShowClock = false, ShowCommandBar = false, ShowMediaBrowserLogo = false }; }
public NotificationTrayViewModel(IEventAggregator events) { Notifications = new ObservableCollection<IViewModel>(); events.Get<ShowNotificationEvent>().Subscribe(e => { IViewModel vm = e.ViewModel; EventHandler closed = null; closed = (sender, args) => { Notifications.Remove(vm); vm.Closed -= closed; }; vm.Closed += closed; Notifications.Add(vm); }, false); }
public Presenter(IEventAggregator events, WindowManager windowManager) { _showPageEvent = events.Get<ShowPageEvent>(); _showNotificationEvent = events.Get<ShowNotificationEvent>(); _pageLoadedEvent = events.Get<PageLoadedEvent>(); _windowManager = windowManager; }