public PartitionView(TaskRunner taskRunner, Volume volume, PartitionDatabase partitionDatabase) { InitializeComponent(); integrityAnalyzer = new IntegrityAnalyzer(volume, partitionDatabase.GetFileDatabase()); this.taskRunner = taskRunner; this.volume = volume; this.partitionDatabase = partitionDatabase; // TODO: Use events instead of passing view to database partitionDatabase.SetPartitionView(this); partitionDatabase.OnLoadRecoveryFromDatabase += PartitionDatabase_OnLoadNewDatabase; explorerPage = new TabPage("File Explorer"); FileExplorer explorer = new FileExplorer(this, taskRunner, volume); explorer.Dock = DockStyle.Fill; explorer.OnMetadataAnalyzerCompleted += Explorer_OnMetadataAnalyzerCompleted; explorer.OnFileCarverCompleted += Explorer_OnFileCarverCompleted; explorerPage.Controls.Add(explorer); this.tabControl1.TabPages.Add(explorerPage); clusterViewerPage = new TabPage("Cluster Viewer"); clusterViewer = new ClusterViewer(volume, integrityAnalyzer); clusterViewer.Dock = DockStyle.Fill; clusterViewerPage.Controls.Add(clusterViewer); this.tabControl1.TabPages.Add(clusterViewerPage); }
public RecoveryResults(FileDatabase database, IntegrityAnalyzer integrityAnalyzer, TaskRunner taskRunner) { InitializeComponent(); this._fileDatabase = database; this._integrityAnalyzer = integrityAnalyzer; this._taskRunner = taskRunner; this._volume = database.GetVolume(); listViewItemComparer = new ListViewItemComparer(); listView1.ListViewItemSorter = listViewItemComparer; PopulateTreeView(database.GetRootFiles()); }
public ClusterViewer(Volume volume, IntegrityAnalyzer integrityAnalyzer) { InitializeComponent(); this.volume = volume; this.integrityAnalyzer = integrityAnalyzer; dataMap = new DataMap((int)volume.MaxClusters); dataMap.Location = new Point(0, 0); dataMap.Dock = DockStyle.Fill; dataMap.CellSelected += DataMap_CellSelected; dataMap.CellHovered += DataMap_CellHovered; dataMap.Increment = (int)volume.BytesPerCluster; clusterColorMap = new ClusterColorMap(); this.Controls.Add(dataMap); InitializeActiveFileSystem(); UpdateDataMap(); }