private static void PreviewWem(PropertiesViewModel propertiesViewModel, IFileSystemViewModel selectedItem, IGameFile selectedGameFile) { propertiesViewModel.IsAudioPreviewVisible = true; var managerCacheDir = ISettingsManager.GetTemp_Audio_importPath(); _ = Directory.CreateDirectory(managerCacheDir); var endPath = Path.Combine(managerCacheDir, Path.GetFileName(selectedItem.Name) ?? throw new InvalidOperationException()); foreach (var f in Directory.GetFiles(managerCacheDir)) { try { File.Delete(f); } catch { // ignored } } using (var fs = new FileStream(endPath, FileMode.Create, FileAccess.Write)) { selectedGameFile.Extract(fs); } if (File.Exists(endPath)) { propertiesViewModel.AddAudioItem(endPath); } }
public MainViewModel(IEventAggregator eventAggregator, IFileSystemViewModel fileSystemViewModel, IReferenceGeneratorViewModel referenceGeneratorViewModel) { FileSystemViewModel = fileSystemViewModel; _referenceGeneratorViewModel = referenceGeneratorViewModel; eventAggregator.Subscribe(this); }
private void handleClosedFileSystemWindow(IFileSystemViewModel fileSystemViewModel) { if (fileSystemViewModel == null) { return; } if (_fileSystemWindows.ContainsKey(fileSystemViewModel)) { _fileSystemWindows.Remove(fileSystemViewModel); } fileSystemViewModel.Dispose(); }
public void ShowFileSystemWindow(IFileSystemViewModel fileSystemViewModel) { if (_fileSystemWindows.ContainsKey(fileSystemViewModel)) { _fileSystemWindows[fileSystemViewModel].Focus(); return; } var window = new FileSystemWindow { DataContext = fileSystemViewModel }; window.Closed += onFileSystemWindowClosed; window.Closing += onFileSystemClosing; _fileSystemWindows[fileSystemViewModel] = window; window.Show(); }
public void OpenSearchResultsWindow(IFileSystemViewModel filesystem, ISearchResultViewModel searchResultViewModel) { var fsWnd = _fileSystemWindows[filesystem]; var wnd = new Window { DataContext = searchResultViewModel, Width = 200, Height = 450, Left = fsWnd.Left + fsWnd.ActualWidth, Top = fsWnd.Top, WindowStyle = WindowStyle.ToolWindow, Title = Path.GetFileName(filesystem.Filename) + ": " + searchResultViewModel.SearchPattern }; var presenter = new ContentPresenter { Content = wnd.DataContext }; wnd.Content = presenter; wnd.Owner = fsWnd; wnd.Show(); }
private void handleFileSystemViewModel(IFileSystemViewModel fileSystem) { WindowsManager.ShowFileSystemWindow(fileSystem); fileSystem.Initialize(); }