/// <summary>Constructs the <see cref="FileGraphViewModel"/>.</summary> public FileGraphViewModel(SettingsService settings, TreemapRendererFactory treemapFactory, UIService ui) { Settings = settings; Treemap = treemapFactory.Create(); UI = ui; Settings.PropertyChanged += OnSettingsPropertyChanged; resizeTimer = UI.CreateTimer(TimeSpan.FromSeconds(0.05), true, OnResizeTick); }
/// <summary> /// Initializes a new instance of the MainViewModel class. /// </summary> public MainViewModel(SettingsService settings, ScanningService scanning, IconCacheService iconCache, UIService ui, BitmapFactory bitmapFactory, ImagesServiceBase images, ClipboardService clipboard, OSService os, IMyDialogService dialogs, TreemapRendererFactory treemapFactory, RelayCommandFactory relayFactory) : base(relayFactory) { Settings = settings; Scanning = scanning; IconCache = iconCache; UI = ui; BitmapFactory = bitmapFactory; Images = images; Clipboard = clipboard; OS = os; Dialogs = dialogs; Treemap = treemapFactory.Create(); Settings.PropertyChanged += OnSettingsPropertyChanged; Scanning.PropertyChanged += OnScanningPropertyChanged; Extensions = new ExtensionItemViewModelCollection(this); SelectedFiles = new ObservableCollection <FileItemViewModel>(); SelectedFiles.CollectionChanged += OnSelectedFilesChanged; FileComparer = new FileComparer(); ExtensionComparer = new ExtensionComparer(); UpdateEmptyRecycleBin(); GCRAMUsage = GC.GetTotalMemory(false); if (IsInDesignMode) { // Code runs in Blend --> create design time data. } else { // Code runs "for real" ramTimer = UI.StartTimer(Settings.RAMInterval, true, OnRAMUsageTick); statusTimer = UI.CreateTimer(Settings.StatusInterval, true, OnStatusTick); } }