/// <summary> /// Initializes a new instance of the <see cref="MainViewModel"/> class. /// The viewmodel for HandBrakes main window. /// </summary> /// <param name="userSettingService"> /// The User Setting Service /// </param> /// <param name="scanService"> /// The scan Service. /// </param> /// <param name="encodeService"> /// The encode Service. /// </param> /// <param name="presetService"> /// The preset Service. /// </param> /// <param name="errorService"> /// The Error Service /// </param> /// <param name="shellViewModel"> /// The shell View Model. /// </param> /// <param name="updateService"> /// The update Service. /// </param> /// <param name="driveDetectService"> /// The drive Detect Service. /// </param> /// <param name="notificationService"> /// The notification Service. /// *** Leave in Constructor. *** TODO find out why? /// </param> public MainViewModel(IUserSettingService userSettingService, IScanServiceWrapper scanService, IEncodeServiceWrapper encodeService, IPresetService presetService, IErrorService errorService, IShellViewModel shellViewModel, IUpdateService updateService, IDriveDetectService driveDetectService, INotificationService notificationService) { this.scanService = scanService; this.encodeService = encodeService; this.presetService = presetService; this.errorService = errorService; this.shellViewModel = shellViewModel; this.updateService = updateService; this.driveDetectService = driveDetectService; this.userSettingService = userSettingService; this.queueProcessor = IoC.Get<IQueueProcessor>(); // Setup Properties this.WindowTitle = "HandBrake"; this.CurrentTask = new EncodeTask(); this.CurrentTask.PropertyChanged += this.CurrentTask_PropertyChanged; this.ScannedSource = new Source(); // Setup Events this.scanService.ScanStared += this.ScanStared; this.scanService.ScanCompleted += this.ScanCompleted; this.scanService.ScanStatusChanged += this.ScanStatusChanged; this.queueProcessor.JobProcessingStarted += this.QueueProcessorJobProcessingStarted; this.queueProcessor.QueueCompleted += this.QueueCompleted; this.queueProcessor.QueueChanged += this.QueueChanged; this.queueProcessor.EncodeService.EncodeStatusChanged += this.EncodeStatusChanged; this.userSettingService.SettingChanged += this.UserSettingServiceSettingChanged; this.Presets = this.presetService.Presets; this.CancelScanCommand = new CancelScanCommand(this.scanService); }
/// <summary> /// Initializes a new instance of the <see cref="MainViewModel"/> class. /// The viewmodel for HandBrakes main window. /// </summary> /// <param name="userSettingService"> /// The User Setting Service /// </param> /// <param name="scanService"> /// The scan Service. /// </param> /// <param name="encodeService"> /// The encode Service. /// </param> /// <param name="presetService"> /// The preset Service. /// </param> /// <param name="errorService"> /// The Error Service /// </param> /// <param name="shellViewModel"> /// The shell View Model. /// </param> /// <param name="updateService"> /// The update Service. /// </param> /// <param name="driveDetectService"> /// The drive Detect Service. /// </param> public MainViewModel(IUserSettingService userSettingService, IScan scanService, IEncode encodeService, IPresetService presetService, IErrorService errorService, IShellViewModel shellViewModel, IUpdateService updateService, IDriveDetectService driveDetectService) { GeneralUtilities.SetInstanceId(); this.scanService = scanService; this.encodeService = encodeService; this.presetService = presetService; this.errorService = errorService; this.shellViewModel = shellViewModel; this.updateService = updateService; this.driveDetectService = driveDetectService; this.userSettingService = userSettingService; this.queueProcessor = IoC.Get<IQueueProcessor>(); this.queueProcessor.QueueManager.ResetInstanceId(); // Setup Properties this.WindowTitle = "HandBrake"; this.CurrentTask = new EncodeTask(); this.ScannedSource = new Source(); // Setup Events this.scanService.ScanStared += this.ScanStared; this.scanService.ScanCompleted += this.ScanCompleted; this.scanService.ScanStatusChanged += this.ScanStatusChanged; this.queueProcessor.JobProcessingStarted += this.QueueProcessorJobProcessingStarted; this.queueProcessor.QueueCompleted += this.QueueCompleted; this.queueProcessor.EncodeService.EncodeStatusChanged += this.EncodeStatusChanged; this.Presets = this.presetService.Presets; }