public FavoritesViewModel(IPresentationManager presentation, IImageManager imageManager, IApiClient apiClient, ISessionManager session, INavigationService nav, IPlaybackManager playback, ILogger logger, double tileWidth, double tileHeight, IServerEvents serverEvents)
            : base(presentation, apiClient)
        {
            _sessionManager = session;
            _playbackManager = playback;
            _imageManager = imageManager;
            _navService = nav;
            _logger = logger;
            _serverEvents = serverEvents;

            TileWidth = tileWidth;
            TileHeight = tileHeight;

            var spotlightTileWidth = TileWidth * 2 + TilePadding;
            var spotlightTileHeight = spotlightTileWidth * 9 / 16;

            SpotlightViewModel = new ImageViewerViewModel(_imageManager, new List<ImageViewerImage>())
            {
                Height = spotlightTileHeight,
                Width = spotlightTileWidth,
                CustomCommandAction = i => _navService.NavigateToItem(i.Item, ViewType.Tv)
            };

            LoadViewModels();

            NavigateToFavoriteMoviesCommand = new RelayCommand(o => NavigateToFavorites("Movie"));
        }
        public InternalDirectShowPlayer(ILogManager logManager, IHiddenWindow hiddenWindow, IPresentationManager presentation, ISessionManager sessionManager, IPlaybackManager playbackManager, ITheaterConfigurationManager config, IIsoManager isoManager, IUserInputManager inputManager, IZipClient zipClient, IHttpClient httpClient, IConnectionManager connectionManager)
        {
            _logger = logManager.GetLogger("InternalDirectShowPlayer");
            _hiddenWindow = hiddenWindow;
            _presentation = presentation;
            _sessionManager = sessionManager;
            _httpClient = httpClient;
            _connectionManager = connectionManager;
            _playbackManager = playbackManager;
            _config = config;
            _isoManager = isoManager;
            _inputManager = inputManager;
            _zipClient = zipClient;

            _config.Configuration.InternalPlayerConfiguration.VideoConfig.SetDefaults();
            _config.Configuration.InternalPlayerConfiguration.AudioConfig.SetDefaults();
            _config.Configuration.InternalPlayerConfiguration.SubtitleConfig.SetDefaults();
            _config.Configuration.InternalPlayerConfiguration.COMConfig.SetDefaults();

            //use a static object so we keep the libraries in the same place. Doesn't usually matter, but the EVR Presenter does some COM hooking that has problems if we change the lib address.
            //if (_privateCom == null)
            //    _privateCom = new URCOMLoader(_config, _zipClient);
            URCOMLoader.Instance.Initialize(_config, _zipClient, logManager);

            EnsureMediaFilters();
        }
 public CriticReviewListViewModel(IPresentationManager presentationManager, IApiClient apiClient, IImageManager imageManager, string itemId)
 {
     ImageManager = imageManager;
     _itemId = itemId;
     ApiClient = apiClient;
     PresentationManager = presentationManager;
 }
 public PluginsPageViewModel(IApplicationHost appHost, INavigationService nav, IInstallationManager installationManager, IPresentationManager presentationManager)
 {
     _appHost = appHost;
     _nav = nav;
     _installationManager = installationManager;
     _presentationManager = presentationManager;
 }
        public ScreensaverManager(IUserInputManager userInput, IPresentationManager presentationManager, IPlaybackManager playback, ISessionManager session, IApiClient apiClient, ITheaterConfigurationManager theaterConfigurationManager, ILogManager logManager, IServerEvents serverEvents)
        {
            _userInput = userInput;
            _presentationManager = presentationManager;
            _playback = playback;
            _session = session;
            _apiClient = apiClient;
            _theaterConfigurationManager = theaterConfigurationManager;
            _logger = logManager.GetLogger(GetType().Name);
            _serverEvents = serverEvents;

            _session.UserLoggedIn += session_UserChanged;
            _session.UserLoggedOut += session_UserChanged;

            _playback.PlaybackCompleted += _playback_PlaybackCompleted;
            _playback.PlaybackStarted += _playback_PlaybackStarted;

            _serverEvents.BrowseCommand += _serverEvents_BrowseCommand;
            _serverEvents.MessageCommand += _serverEvents_MessageCommand;
            _serverEvents.PlayCommand += _serverEvents_PlayCommand;
            _serverEvents.PlaystateCommand += _serverEvents_PlaystateCommand;
            _serverEvents.GeneralCommand += _serverEvents_GeneralCommand; 

            SystemEvents.PowerModeChanged += SystemEvents_PowerModeChanged;

            StartTimer();
        }
 public StartupWizardXyVsFilter(INavigationService nav, IPresentationManager presentation, IMediaFilters mediaFilters)
 {
     _nav = nav;
     _presentation = presentation;
     _mediaFilters = mediaFilters;
     InitializeComponent();
 }
 public PluginCategoryListViewModel(IPresentationManager presentationManager, IInstallationManager installationManager, INavigationService nav, IApplicationHost appHost)
 {
     _presentationManager = presentationManager;
     _installationManager = installationManager;
     _nav = nav;
     _appHost = appHost;
 }
 public LogoScreensaverWindow(IPresentationManager presentationManager, IScreensaverManager screensaverManager, ILogger logger) : base(presentationManager, screensaverManager, logger)
 {
     InitializeComponent();
     
     DataContext = this;
     Loaded += LogoScreensaver_Loaded;
 }
 public UserListViewModel(IPresentationManager presentationManager, IImageManager imageManager, ISessionManager sessionManager, IApiClient apiClient)
 {
     ApiClient = apiClient;
     SessionManager = sessionManager;
     ImageManager = imageManager;
     PresentationManager = presentationManager;
 }
        /// <summary>
        /// Initializes a new instance of the <see cref="MainWindow" /> class.
        /// </summary>
        public MainWindow(ILogger logger, IPlaybackManager playbackManager, IApiClient apiClient, IImageManager imageManager, IApplicationHost appHost, IPresentationManager appWindow, IUserInputManager userInput, ITheaterConfigurationManager config, INavigationService nav, IScreensaverManager screensaverManager)
            : base()
        {
            _logger = logger;
            _appHost = appHost;
            _appWindow = appWindow;
            _config = config;
            _playbackManager = playbackManager;
            UserInputManager = userInput;
            NavigationManager = nav;

            Loaded += MainWindow_Loaded;

            InitializeComponent();

            RotatingBackdrops = new RotatingBackdropsViewModel(apiClient, _config, imageManager, playbackManager, logger, screensaverManager);

            _config.ConfigurationUpdated += _config_ConfigurationUpdated;
            _playbackManager.PlaybackStarted += _playbackManager_PlaybackStarted;
            _playbackManager.PlaybackCompleted += _playbackManager_PlaybackCompleted;

            //Timeline.DesiredFrameRateProperty.OverrideMetadata(
            //    typeof(Timeline),
            //    new FrameworkPropertyMetadata { DefaultValue = 30 }
            //);
        }
        public UserProfileWindow(DefaultThemePageMasterCommandsViewModel masterCommands, ISessionManager session, IPresentationManager presentationManager, IImageManager imageManager, IApiClient apiClient, DisplayPreferences displayPreferences, ListPageConfig options)
        {
            _session = session;
            _options = options;
            _displayPreferencesViewModel = new DisplayPreferencesViewModel(displayPreferences, presentationManager);
            _previousFocus = "";

            InitializeComponent();

            Loaded += UserProfileWindow_Loaded;
            Unloaded += UserProfileWindow_Unloaded;
            masterCommands.PageNavigated += masterCommands_PageNavigated;
            BtnClose.Click += BtnClose_Click;

            //Display preferences
            RadioList.Click += radioList_Click;
            RadioPoster.Click += radioPoster_Click;
            RadioThumbstrip.Click += radioThumbstrip_Click;
            RadioPosterStrip.Click += radioPosterStrip_Click;

            //Sort preferences
            RadioSortAscending.Click += RadioSortAscending_Click;
            RadioSortDescending.Click += RadioSortDescending_Click;

            //Focus tracking
            BtnClose.IsKeyboardFocusedChanged += Button_IsKeyboardFocusedChanged;
            HomeButton.IsKeyboardFocusedChanged += Button_IsKeyboardFocusedChanged;
            DisplayPreferencesButton.IsKeyboardFocusedChanged += Button_IsKeyboardFocusedChanged;
            SortButton.IsKeyboardFocusedChanged += Button_IsKeyboardFocusedChanged;
            SettingsButton.IsKeyboardFocusedChanged += Button_IsKeyboardFocusedChanged;
            LogoutButton.IsKeyboardFocusedChanged += Button_IsKeyboardFocusedChanged;
            ShutdownAppButton.IsKeyboardFocusedChanged += Button_IsKeyboardFocusedChanged;
            SleepButton.IsKeyboardFocusedChanged += Button_IsKeyboardFocusedChanged;
            RestartButton.IsKeyboardFocusedChanged += Button_IsKeyboardFocusedChanged;
            ShutdownButton.IsKeyboardFocusedChanged += Button_IsKeyboardFocusedChanged;

            RadioList.IsKeyboardFocusedChanged += Button_IsKeyboardFocusedChanged;
            RadioPosterStrip.IsKeyboardFocusedChanged += Button_IsKeyboardFocusedChanged;
            RadioPoster.IsKeyboardFocusedChanged += Button_IsKeyboardFocusedChanged;
            RadioThumbstrip.IsKeyboardFocusedChanged += Button_IsKeyboardFocusedChanged;

            RadioSortAscending.IsKeyboardFocusedChanged += Button_IsKeyboardFocusedChanged;
            RadioSortDescending.IsKeyboardFocusedChanged += Button_IsKeyboardFocusedChanged;
            CheckBoxSortRemember.IsKeyboardFocusedChanged += Button_IsKeyboardFocusedChanged;

            ContentGrid.DataContext = new DefaultThemeUserDtoViewModel(masterCommands, apiClient, imageManager, session)
            {
                User = session.CurrentUser,
                ImageHeight = 54
            };

            MainGrid.DataContext = this;
            CheckBoxSortRemember.DataContext = _displayPreferencesViewModel;

            if (displayPreferences != null)
            {
                //Always set to false to begin with in case the user is just doing a quick sort and doesn't want it saved.
                _displayPreferencesViewModel.RememberSorting = false;
            }
        }
 public CommandActionsEntryPoint(ICommandManager commandManager, IPresentationManager presentationManager, IPlaybackManager playbackManager, INavigationService navigationService, IScreensaverManager screensaverManager, ILogManager logManager)
 {
     _commandManager = commandManager;
     _defaultCommandActionMap = new DefaultCommandActionMap(presentationManager, playbackManager, navigationService, screensaverManager, logManager);
 
     _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 UserListViewModel(IPresentationManager presentationManager, IConnectionManager connectionManager, IImageManager imageManager, ISessionManager sessionManager, INavigationService navigation)
 {
     SessionManager = sessionManager;
     ImageManager = imageManager;
     ConnectionManager = connectionManager;
     PresentationManager = presentationManager;
 }
 public StartupWizardPage(INavigationService nav, IConnectionManager connectionManager, IPresentationManager presentation, ILogger logger)
 {
     _nav = nav;
     _connectionManager = connectionManager;
     _presentation = presentation;
     _logger = logger;
     InitializeComponent();
 }
 public ConfigurationPage(INavigationService nav, ITheaterConfigurationManager config, IPresentationManager presentation, IMediaFilters mediaFilters)
 {
     _nav = nav;
     _config = config;
     _presentation = presentation;
     _mediaFilters = mediaFilters;
     InitializeComponent();
 }
 public PlaybackManager(ITheaterConfigurationManager configurationManager, ILogger logger, IApiClient apiClient, INavigationService nav, IPresentationManager presentationManager)
 {
     _configurationManager = configurationManager;
     _logger = logger;
     _apiClient = apiClient;
     _nav = nav;
     _presentationManager = presentationManager;
 }
 public StartupWizardLav(INavigationService nav, IPresentationManager presentation, IMediaFilters mediaFilters, IApiClient apiClient)
 {
     _nav = nav;
     _presentation = presentation;
     _mediaFilters = mediaFilters;
     _apiClient = apiClient;
     InitializeComponent();
 }
 public UserListViewModel(IPresentationManager presentationManager, IApiClient apiClient, IImageManager imageManager, ISessionManager sessionManager, INavigationService navigation)
 {
     SessionManager = sessionManager;
     _navigation = navigation;
     ImageManager = imageManager;
     ApiClient = apiClient;
     PresentationManager = presentationManager;
 }
 public NetworkSettingsPage(ITheaterConfigurationManager config, IApiClient apiClient, ISessionManager session, IPresentationManager presentationManager)
 {
     _config = config;
     _apiClient = apiClient;
     _session = session;
     _presentationManager = presentationManager;
     InitializeComponent();
 }
 public MediaPlayersPage(INavigationService nav, IPlaybackManager playbackManager, ITheaterConfigurationManager config, IPresentationManager presentation, ISessionManager session)
 {
     _nav = nav;
     _playbackManager = playbackManager;
     _config = config;
     _presentation = presentation;
     _session = session;
     InitializeComponent();
 }
        public PluginsPage(IApplicationHost appHost, INavigationService nav, IPresentationManager presentation, IInstallationManager installationManager)
        {
            _presentation = presentation;
            InitializeComponent();

            var viewModel = new PluginsPageViewModel(appHost, nav, installationManager, presentation);
            viewModel.PropertyChanged += viewModel_PropertyChanged;
            DataContext = viewModel;
        }
        public InstalledPluginPage(InstalledPluginViewModel plugin, IPresentationManager presentationManager)
        {
            _plugin = plugin;
            _presentationManager = presentationManager;

            InitializeComponent();

            DataContext = plugin;
        }
        public PluginCategoryViewModel(IPresentationManager presentationManager, IInstallationManager installationManager, INavigationService nav, IApplicationHost appHost)
        {
            _presentationManager = presentationManager;
            _installationManager = installationManager;
            _nav = nav;
            _appHost = appHost;

            NavigateCommand = new RelayCommand(Navigate);
        }
        public FolderPage(BaseItemDto parent, DisplayPreferences displayPreferences, IApiClient apiClient, IImageManager imageManager, IPresentationManager presentation, INavigationService navigationManager, IPlaybackManager playbackManager, ILogger logger, ListPageConfig options)
        {
            _logger = logger;
            _presentationManager = presentation;
            _imageManager = imageManager;
            _apiClient = apiClient;
            _options = options;

            _parentItem = parent;

            InitializeComponent();

            Loaded += FolderPage_Loaded;

            SetDefaults(displayPreferences);

            var playAllFromHere = parent.IsType("playlist") || parent.IsType("musicalbum");

            _viewModel = new ItemListViewModel(vm => options.CustomItemQuery(vm, displayPreferences), _presentationManager, _imageManager, _apiClient, navigationManager, playbackManager, _logger)
            {
                ImageDisplayHeightGenerator = GetImageDisplayHeight,
                DisplayNameGenerator = options.DisplayNameGenerator ?? GetDisplayName,
                PreferredImageTypesGenerator = GetPreferredImageTypes,

                ShowSidebarGenerator = GetShowSidebar,
                ScrollDirectionGenerator = GetScrollDirection,

                AutoSelectFirstItem = true,

                ShowLoadingAnimation = true,

                PlayAllFromHereOnPlayCommand = playAllFromHere,
                PlayAllFromHereOnNavigateCommand = playAllFromHere
            };

            if (options.ShowTitle)
            {
                _viewModel.OnItemCreated = v =>
                {
                    v.DisplayNameVisibility = Visibility.Visible;
                };
            }

            _viewModel.AddIndexOptions(options.IndexOptions);

            _viewModel.PropertyChanged += _viewModel_PropertyChanged;

            _viewModel.DisplayPreferences = displayPreferences;

            if (!string.IsNullOrEmpty(options.IndexValue))
            {
                var index = options.IndexOptions.First(i => string.Equals(i.Name, options.IndexValue));
                _viewModel.IndexOptionsCollectionView.MoveCurrentTo(index);
            }

            DataContext = _viewModel;
        }
        public SelectableMediaStreamListViewModel(IPresentationManager presentationManager, IPlaybackManager playbackManager)
        {
            _playbackManager = playbackManager;
            _presentationManager = presentationManager;

            ActivateCommand = new RelayCommand(ActivateStream);

            
        }
        public MediaCenterRemoteEntryPoint(IPresentationManager presenation, IPlaybackManager playback, ILogManager logManager, INavigationService nav, IUserInputManager userInput)
        {
            _presenation = presenation;
            _playback = playback;
            _nav = nav;
            _userInput = userInput;

            _logger = logManager.GetLogger(GetType().Name);
        }
        public InstalledPluginListViewModel(IApplicationHost appHost, INavigationService nav, IInstallationManager installationManager, IPresentationManager presentationManager)
        {
            _appHost = appHost;
            _nav = nav;
            _installationManager = installationManager;
            _presentationManager = presentationManager;

            NavigateCommand = new RelayCommand(Navigate);
        }
Beispiel #29
0
        public PluginsPage(IApplicationHost appHost, INavigationService nav, IPresentationManager presentation, IInstallationManager installationManager)
        {
            _presentation = presentation;
            InitializeComponent();

            var viewModel = new PluginsPageViewModel(appHost, nav, installationManager, presentation);

            viewModel.PropertyChanged += viewModel_PropertyChanged;
            DataContext = viewModel;
        }
Beispiel #30
0
        public ImageViewerPage(IPresentationManager presentation, ImageViewerViewModel viewModel)
        {
            _presentation = presentation;
            InitializeComponent();

            DataContext = viewModel;

            Loaded   += ImageViewerPage_Loaded;
            Unloaded += ImageViewerPage_Unloaded;
        }
 public StartupWizardPage2(INavigationService nav, ITheaterConfigurationManager config, IApiClient apiClient, IPresentationManager presentation, ILogger logger, IMediaFilters mediaFilters)
 {
     _nav          = nav;
     _config       = config;
     _apiClient    = apiClient;
     _presentation = presentation;
     _logger       = logger;
     _mediaFilters = mediaFilters;
     InitializeComponent();
 }
Beispiel #32
0
 public HomePageViewModel(IPresentationManager presentationManager, ISessionManager sessionManager, ILogger logger, IImageManager imageManager, INavigationService nav, IPlaybackManager playbackManager, IConnectionManager connectionManager)
 {
     _presentationManager = presentationManager;
     _sessionManager      = sessionManager;
     _logger            = logger;
     _imageManager      = imageManager;
     _nav               = nav;
     _playbackManager   = playbackManager;
     _connectionManager = connectionManager;
 }
Beispiel #33
0
        public ThemeVideosPage(IPresentationManager presentation, INavigationService nav, IApiClient apiClient)
        {
            _presentation = presentation;
            _nav          = nav;
            _apiClient    = apiClient;
            InitializeComponent();

            BtnNext.Click    += BtnNext_Click;
            BtnInstall.Click += BtnInstall_Click;
        }
        public ItemPersonListViewModel(IApiClient apiClient, IImageManager imageManager, IPresentationManager presentationManager, INavigationService navigation)
        {
            _apiClient           = apiClient;
            _imageManager        = imageManager;
            _presentationManager = presentationManager;
            _navigation          = navigation;
            _listCollectionView  = new ListCollectionView(_listItems);

            NavigateCommand = new RelayCommand(Navigate);
        }
        public ItemPersonListViewModel(IApiClient apiClient, IImageManager imageManager, IPresentationManager presentationManager, INavigationService navigation)
        {
            _apiClient = apiClient;
            _imageManager = imageManager;
            _presentationManager = presentationManager;
            _navigation = navigation;
            _listCollectionView = new ListCollectionView(_listItems);

            NavigateCommand = new RelayCommand(Navigate);
        }
Beispiel #36
0
        public DisplayPreferencesViewModel(DisplayPreferences displayPreferences, IPresentationManager presentation)
        {
            DisplayPreferences = displayPreferences;
            _presentation      = presentation;

            SaveCommand = new RelayCommand(obj => Save());
            IncreaseImageSizeCommand     = new RelayCommand(obj => IncreaseImageSize());
            DecreaseImageSizeCommand     = new RelayCommand(obj => DecreaseImageSize());
            ToggleScrollDirectionCommand = new RelayCommand(obj => ToggleScrollDirection());
        }
        private const double DuplicateCommandPeriod = 500;// Milliseconds


        public CommandManager(IPresentationManager presentationManager, IPlaybackManager playbackManager, INavigationService navigationService, IUserInputManager userInputManager, ILogManager logManager)
        {
            _userInputManager = userInputManager;
            _inputCommandMaps = new InputCommandMaps();

            _userInputManager.KeyDown += input_KeyDown;
            _userInputManager.AppCommand += input_AppCommand;

            _logger = logManager.GetLogger(GetType().Name);
        }
Beispiel #38
0
        public BackdropScreensaverWindow(ISessionManager session, IPresentationManager presentationManager, IScreensaverManager screensaverManager, IImageManager imageManager, ILogger logger)
            : base(presentationManager, screensaverManager, logger)
        {
            _session      = session;
            _imageManager = imageManager;
            InitializeComponent();

            DataContext = this;

            LoadScreensaver();
        }
Beispiel #39
0
 public HomePageViewModel(IPresentationManager presentationManager, IApiClient apiClient, ISessionManager sessionManager, ILogger logger, IImageManager imageManager, INavigationService nav, IPlaybackManager playbackManager, IServerEvents serverEvents)
 {
     _presentationManager = presentationManager;
     _apiClient           = apiClient;
     _sessionManager      = sessionManager;
     _logger          = logger;
     _imageManager    = imageManager;
     _nav             = nav;
     _playbackManager = playbackManager;
     _serverEvents    = serverEvents;
 }
Beispiel #40
0
        public LoginPage(IConnectionManager connectionManager, IImageManager imageManager, INavigationService navigationManager, ISessionManager sessionManager, IPresentationManager presentationManager, ITheaterConfigurationManager configManager)
        {
            PresentationManager  = presentationManager;
            SessionManager       = sessionManager;
            NavigationManager    = navigationManager;
            ImageManager         = imageManager;
            ConnectionManager    = connectionManager;
            ConfigurationManager = configManager;

            InitializeComponent();
        }
Beispiel #41
0
 public WebSocketEntryPoint(ISessionManager session, IApiClient apiClient, IJsonSerializer json, ILogManager logManager, IApplicationHost appHost, INavigationService nav, IPlaybackManager playbackManager, IPresentationManager presentation)
 {
     _session         = session;
     _apiClient       = apiClient;
     _json            = json;
     _logger          = logManager.GetLogger(GetType().Name);
     _appHost         = (ApplicationHost)appHost;
     _nav             = nav;
     _playbackManager = playbackManager;
     _presentation    = presentation;
 }
Beispiel #42
0
        public TvViewModel(IPresentationManager presentation, IImageManager imageManager, IApiClient apiClient, ISessionManager session, INavigationService nav, IPlaybackManager playback, ILogger logger, double tileWidth, double tileHeight, IServerEvents serverEvents, string parentId)
            : base(presentation, apiClient)
        {
            _sessionManager  = session;
            _playbackManager = playback;
            _imageManager    = imageManager;
            _navService      = nav;
            _logger          = logger;
            _serverEvents    = serverEvents;
            ParentId         = parentId;

            TileWidth  = tileWidth;
            TileHeight = tileHeight;

            var spotlightTileHeight = TileHeight * 2 + TileMargin * 2;
            var spotlightTileWidth  = 16 * (spotlightTileHeight / 9) + 100;

            var lowerSpotlightWidth = spotlightTileWidth / 3 - (TileMargin * 1.5);

            SpotlightViewModel = new ImageViewerViewModel(_imageManager, new List <ImageViewerImage>())
            {
                Height = spotlightTileHeight,
                Width  = spotlightTileWidth,
                CustomCommandAction  = i => _navService.NavigateToItem(i.Item, ViewType.Tv),
                ImageStretch         = Stretch.UniformToFill,
                FocusedCommandAction = () => GalleryItemFocused()
            };

            GenresViewModel = new GalleryViewModel(ApiClient, _imageManager, _navService)
            {
                GalleryHeight        = TileHeight,
                GalleryWidth         = lowerSpotlightWidth,
                CustomCommandAction  = () => NavigateWithLoading(NavigateToGenresInternal),
                FocusedCommandAction = () => GalleryItemFocused()
            };

            AllShowsViewModel = new GalleryViewModel(ApiClient, _imageManager, _navService)
            {
                GalleryHeight        = TileHeight,
                GalleryWidth         = lowerSpotlightWidth,
                CustomCommandAction  = () => NavigateWithLoading(NavigateToAllShows),
                FocusedCommandAction = () => GalleryItemFocused()
            };

            UpcomingViewModel = new GalleryViewModel(ApiClient, _imageManager, _navService)
            {
                GalleryHeight        = TileHeight,
                GalleryWidth         = lowerSpotlightWidth,
                CustomCommandAction  = () => NavigateWithLoading(NavigateToAllShows),
                FocusedCommandAction = () => GalleryItemFocused()
            };

            LoadViewModels();
        }
Beispiel #43
0
        public ConfigureMediaPlayerPage(PlayerConfiguration playerConfig, IPlaybackManager playbackManager, ITheaterConfigurationManager config, IPresentationManager presentation, INavigationService nav, ISessionManager session)
        {
            _playerConfig    = playerConfig;
            _playbackManager = playbackManager;
            _config          = config;
            _presentation    = presentation;
            _nav             = nav;
            _session         = session;

            InitializeComponent();
        }
Beispiel #44
0
        public ManualLoginPage(string initialUsername, ISessionManager sessionManager, IPresentationManager presentationManager)
        {
            PresentationManager = presentationManager;
            SessionManager      = sessionManager;
            InitializeComponent();

            TxtUsername.Text = initialUsername;

            Loaded          += LoginPage_Loaded;
            BtnSubmit.Click += BtnSubmit_Click;
        }
Beispiel #45
0
 public AppearancePage(ITheaterConfigurationManager config, ISessionManager session, IImageManager imageManager, IApiClient apiClient, IPresentationManager presentation, IThemeManager themeManager, INavigationService nav)
 {
     _config       = config;
     _session      = session;
     _imageManager = imageManager;
     _apiClient    = apiClient;
     _presentation = presentation;
     _themeManager = themeManager;
     _nav          = nav;
     InitializeComponent();
 }
 public InternalDirectShowPlayer(ILogManager logManager, IHiddenWindow hiddenWindow, IPresentationManager presentation, IUserInputManager userInput, IApiClient apiClient, IPlaybackManager playbackManager, ITheaterConfigurationManager config, IIsoManager isoManager)
 {
     _logger          = logManager.GetLogger("DirectShowPlayer");
     _hiddenWindow    = hiddenWindow;
     _presentation    = presentation;
     _userInput       = userInput;
     _apiClient       = apiClient;
     _playbackManager = playbackManager;
     _config          = config;
     _isoManager      = isoManager;
 }
Beispiel #47
0
        public AppListViewModel(IPresentationManager presentationManager, ISessionManager sessionManager, ILogger logger)
        {
            Logger              = logger;
            SessionManager      = sessionManager;
            PresentationManager = presentationManager;

            LaunchCommand = new RelayCommand(Launch);

            Apps = new ListCollectionView(_listItems);

            ReloadApps();
        }
Beispiel #48
0
        public ManualLoginPage(string initialUsername, bool?isAutoLoginChecked, ISessionManager sessionManager, IPresentationManager presentationManager)
        {
            PresentationManager = presentationManager;
            SessionManager      = sessionManager;
            InitializeComponent();

            TxtUsername.Text       = initialUsername;
            ChkAutoLogin.IsChecked = isAutoLoginChecked;

            Loaded          += LoginPage_Loaded;
            BtnSubmit.Click += BtnSubmit_Click;
        }
Beispiel #49
0
        public AppearancePage(ITheaterConfigurationManager config, ISessionManager session, IImageManager imageManager, IPresentationManager presentation, IThemeManager themeManager, INavigationService nav, IScreensaverManager screensaverManager)
        {
            _config             = config;
            _session            = session;
            _imageManager       = imageManager;
            _presentation       = presentation;
            _themeManager       = themeManager;
            _nav                = nav;
            _screensaverManager = screensaverManager;

            InitializeComponent();
        }
Beispiel #50
0
        public ServerSelectionPage(IConnectionManager connectionManager,
                                   IPresentationManager presentationManager,
                                   List <ServerInfo> servers, INavigationService navigationManager, ILogger logger)
        {
            PresentationManager = presentationManager;
            ConnectionManager   = connectionManager;
            _servers            = servers;
            Logger            = logger;
            NavigationManager = navigationManager;

            InitializeComponent();
        }
Beispiel #51
0
        public DetailPage(ItemViewModel itemViewModel, IPresentationManager presentation)
        {
            _itemViewModel = itemViewModel;
            _presentation  = presentation;
            InitializeComponent();

            Loaded += PanoramaDetailPage_Loaded;

            SetTitle(_itemViewModel.Item);

            DataContextChanged += PanoramaDetailPage_DataContextChanged;
        }
Beispiel #52
0
 public DetailPageViewModel(ItemViewModel item, IApiClient apiClient, ISessionManager sessionManager, IImageManager imageManager, IPresentationManager presentationManager, IPlaybackManager playback, INavigationService navigation, ILogger logger, ViewType context)
 {
     _apiClient           = apiClient;
     _sessionManager      = sessionManager;
     _imageManager        = imageManager;
     _presentationManager = presentationManager;
     _playback            = playback;
     _navigation          = navigation;
     _logger       = logger;
     Context       = context;
     ItemViewModel = item;
 }
        public FolderPage(BaseItemDto parent, DisplayPreferences displayPreferences, IApiClient apiClient, IImageManager imageManager, ISessionManager sessionManager, IPresentationManager presentation, INavigationService navigationManager, IPlaybackManager playbackManager, ILogger logger, IServerEvents serverEvents, ListPageConfig options)
        {
            _navigationManager   = navigationManager;
            _playbackManager     = playbackManager;
            _logger              = logger;
            _serverEvents        = serverEvents;
            _presentationManager = presentation;
            _sessionManager      = sessionManager;
            _imageManager        = imageManager;
            _apiClient           = apiClient;
            _options             = options;
            _displayPreferences  = displayPreferences;

            _parentItem = parent;

            InitializeComponent();

            Loaded   += FolderPage_Loaded;
            Unloaded += FolderPage_Unloaded;

            SetDefaults(displayPreferences);

            _viewModel = new ItemListViewModel(GetItemsAsync, _presentationManager, _imageManager, _apiClient, _navigationManager, _playbackManager, _logger, _serverEvents)
            {
                ImageDisplayHeightGenerator  = GetImageDisplayHeight,
                DisplayNameGenerator         = GetDisplayName,
                PreferredImageTypesGenerator = GetPreferredImageTypes,

                ShowSidebarGenerator     = GetShowSidebar,
                ScrollDirectionGenerator = GetScrollDirection,

                AutoSelectFirstItem = true,

                ShowLoadingAnimation = true
            };

            _viewModel.AddIndexOptions(options.IndexOptions);

            _viewModel.PropertyChanged += _viewModel_PropertyChanged;

            _viewModel.DisplayPreferences = displayPreferences;

            DataContext = _viewModel;

            UpdateSortTitle();
            UpdateSortOrder();

            BtnSort.Visibility = _options.SortOptions.Count > 0
                                     ? Visibility.Visible
                                     : Visibility.Collapsed;

            BtnSort.Click += BtnSort_Click;
        }
Beispiel #54
0
        public HomePage(BaseItemDto parentItem, IPresentationManager presentationManager)
        {
            _presentationManager = presentationManager;
            _parentItem          = parentItem;

            InitializeComponent();

            Loaded   += HomePage_Loaded;
            Unloaded += HomePage_Unloaded;

            DataContextChanged += PanoramaDetailPage_DataContextChanged;
        }
Beispiel #55
0
        private double _currentPlaybackRate = 1.0; // Todo - move to reportable property of IPlaybackManager

        public DefaultCommandActionMap(IPresentationManager presentationManager, IPlaybackManager playbackManager, INavigationService navigationService, IScreensaverManager screensaverManager, ILogManager logManager)
        {
            _presentationManager = presentationManager;
            _playbackManager     = playbackManager;
            _screensaverManager  = screensaverManager;
            _navigationService   = navigationService;
            _logger = logManager.GetLogger(GetType().Name);
            _globalCommandActionMap   = CreateGlobalCommandActionMap();
            _nullCommandActionMapping = new CommandActionMapping(Command.Null, NullAction);

            _playbackManager.PlaybackStarted   += PlaybackManagerPlaybackManagerStarted;
            _playbackManager.PlaybackCompleted += PlaybackManagerPlaybackManagerCompleted;
        }
Beispiel #56
0
        public DisplayPreferencesViewModel(DisplayPreferences displayPreferences, IPresentationManager presentation, ITheaterConfigurationManager configurationManager, ISessionManager sessionManager)
        {
            DisplayPreferences    = displayPreferences;
            _presentation         = presentation;
            _configurationManager = configurationManager;
            _sessionManager       = sessionManager;
            _userConfig           = configurationManager.GetUserTheaterConfiguration(sessionManager.CurrentUser.Id);

            SaveCommand = new RelayCommand(obj => Save());
            IncreaseImageSizeCommand     = new RelayCommand(obj => IncreaseImageSize());
            DecreaseImageSizeCommand     = new RelayCommand(obj => DecreaseImageSize());
            ToggleScrollDirectionCommand = new RelayCommand(obj => ToggleScrollDirection());
        }
 public WebSocketEntryPoint(ISessionManager sessionManager, ILogManager logManager, IApplicationHost appHost, IImageManager imageManager, INavigationService navigationService, IPlaybackManager playbackManager, IPresentationManager presentationManager, ICommandManager commandManager, IUserInputManager userInputManager, IConnectionManager connectionManager)
 {
     _sessionManager      = sessionManager;
     _logger              = logManager.GetLogger(GetType().Name);
     _appHost             = (ApplicationHost)appHost;
     _imageManager        = imageManager;
     _navigationService   = navigationService;
     _playbackManager     = playbackManager;
     _presentationManager = presentationManager;
     _commandManager      = commandManager;
     _userInputManager    = userInputManager;
     _connectionManager   = connectionManager;
 }
Beispiel #58
0
 public InternalDirectShowPlayer(ILogManager logManager, IHiddenWindow hiddenWindow, IPresentationManager presentation, ISessionManager sessionManager, IApiClient apiClient, IPlaybackManager playbackManager, ITheaterConfigurationManager config, IIsoManager isoManager, IUserInputManager inputManager, IZipClient zipClient, IHttpClient httpClient)
 {
     _logger          = logManager.GetLogger("InternalDirectShowPlayer");
     _hiddenWindow    = hiddenWindow;
     _presentation    = presentation;
     _sessionManager  = sessionManager;
     _apiClient       = apiClient;
     _httpClient      = httpClient;
     _playbackManager = playbackManager;
     _config          = config;
     _isoManager      = isoManager;
     _inputManager    = inputManager;
     _zipClient       = zipClient;
 }
Beispiel #59
0
        public DetailPage(ItemViewModel itemViewModel, IPresentationManager presentation)
        {
            _itemViewModel          = itemViewModel;
            _presentation           = presentation;
            _isFocusFunctionButtons = true;
            _isInitialMenuSelection = true;
            InitializeComponent();

            Loaded += PanoramaDetailPage_Loaded;

            SetTitle(_itemViewModel.Item);

            DataContextChanged += PanoramaDetailPage_DataContextChanged;
        }
Beispiel #60
0
        public SettingsPage(IPresentationManager presentationManager, INavigationService nav, ISessionManager session, IApplicationHost appHost, IInstallationManager installationManager)
        {
            _presentationManager = presentationManager;
            _nav                 = nav;
            _session             = session;
            _appHost             = appHost;
            _installationManager = installationManager;

            InitializeComponent();

            Loaded += SettingsPage_Loaded;
            MenuList.ItemInvoked       += MenuList_ItemInvoked;
            PluginMenuList.ItemInvoked += MenuList_ItemInvoked;
        }