public HyperspinFilesViewModel(IEventAggregator ea, ISettingsHypermint settings, IRegionManager regionManager, ITrashMaster trashMaster, ISelectedService selectedService, IImageEditService imageEdit, IHyperspinManager hyperspinManager) { _eventAggregator = ea; _settingsRepo = settings; _selectedService = selectedService; _imageEdit = imageEdit; _regionManager = regionManager; _trashMaster = trashMaster; _hyperspinManager = hyperspinManager; CurrentMediaFiles = new ObservableCollection <MediaFile>(); FilesForGame = new ListCollectionView(CurrentMediaFiles); FilesForGame.CurrentChanged += FilesForGame_CurrentChanged; _eventAggregator.GetEvent <GameSelectedEvent>().Subscribe((x) => { try { string activeViewName = RegionHelper.GetCurrentViewName(_regionManager); //if (!activeViewName.Contains("HsMediaAuditView") || !activeViewName.Contains("DatabaseDetailsView")) SetCurrentName(x); if (FilesForGame != null) { if (FilesForGame.CurrentItem == null) { _eventAggregator.GetEvent <PreviewGeneratedEvent>().Publish(""); } else { FilesForGame_CurrentChanged(null, null); } } } catch (Exception ex) { } }, ThreadOption.UIThread); _eventAggregator.GetEvent <SystemSelectedEvent>().Subscribe((x) => { UnusedMediaFiles = null; CurrentMediaFiles.Clear(); }); //_eventAggregator.GetEvent<AuditHyperSpinEndEvent>().Subscribe(BuildUnusedMediaList); RemoveFileCommand = new DelegateCommand(() => { var currentFile = FilesForGame.CurrentItem as MediaFile; if (currentFile != null) { _eventAggregator.GetEvent <PreviewGeneratedEvent>().Publish(""); _trashMaster.HsFileToTrash(currentFile.FileName, GetSystemFolderName(columnHeader), columnHeader, _selectedService.CurrentRomname); try { SetCurrentName(new string[] { _selectedService.CurrentRomname, columnHeader }); _eventAggregator.GetEvent <RefreshHsAuditEvent>().Publish(""); } catch (Exception) { } } }); OpenFolderCommand = new DelegateCommand(OpenFolder); OpenTrashFolderCommand = new DelegateCommand(() => { var sys = GetSystemFolderName(columnHeader); var result = new DirectoryInfo(_trashMaster.GetHsTrashPath(sys, columnHeader)).Open(); }); }
public CreateImageViewModel(IEventAggregator eventAggregator, ISettingsHypermint settings, ISelectedService selected, IImageEditService imageEdit) { _settings = settings; _selected = selected; _imageEdit = imageEdit; Author = _settings.HypermintSettings.Author; CurrentSetting = new ImageEditPreset { Width = 1920, Height = 1080, Png = true, Description = "desc", FlipL = true, FlipOn = true, ResizeImage = true, StretchImage = true, TileEnabled = true, TileWidth = 200, TileHeight = 150 }; GeneratePreviewCommand = new DelegateCommand(GeneratePreview); MediaExportTypes = new ListCollectionView(new List <string>() { "Layer 1", "Layer 2", "Layer 3", "Extra Layer 1", "BezelBg", "Background", }); _eventAggregator = eventAggregator; _eventAggregator.GetEvent <ImageEditSourceEvent>().Subscribe(x => { currentImageFileSource = x; ImageEditSource = ConvertToImageSource.ImageSourceFromUri(new Uri(currentImageFileSource)); UpdateImagePreviewHeader(); }); //Return the current UI as a preset _eventAggregator.GetEvent <ImagePresetRequestEvent>().Subscribe((x) => { _eventAggregator.GetEvent <ImagePresetRequestedEvent>().Publish(CurrentSetting); }); _eventAggregator.GetEvent <ImagePresetUpdateUiEvent>().Subscribe(x => { SetUIValuesFromPreset((ImageEditPreset)x); }); SaveImageCommand = new DelegateCommand(() => { var outputFileName = CreateNewImageFileName(); CreateImage(outputFileName, CurrentSetting.Png); }); }