diff --git a/SourceGen/DisasmProject.cs b/SourceGen/DisasmProject.cs
index f42be2b..6a5f985 100644
--- a/SourceGen/DisasmProject.cs
+++ b/SourceGen/DisasmProject.cs
@@ -371,7 +371,7 @@ namespace SourceGen {
highAscii.DebugDump("High-ASCII (" + DataAnalysis.MIN_STRING_LENGTH + "+)");
}
Debug.WriteLine("ScanFileData took " +
- ((DateTime.Now - startWhen).Milliseconds) + " ms");
+ ((DateTime.Now - startWhen).TotalMilliseconds) + " ms");
RepeatedBytes = repeats;
StdAsciiBytes = ascii;
diff --git a/SourceGenWPF/DisasmProject.cs b/SourceGenWPF/DisasmProject.cs
index 1910bdf..47cb82f 100644
--- a/SourceGenWPF/DisasmProject.cs
+++ b/SourceGenWPF/DisasmProject.cs
@@ -371,7 +371,7 @@ namespace SourceGenWPF {
highAscii.DebugDump("High-ASCII (" + DataAnalysis.MIN_STRING_LENGTH + "+)");
}
Debug.WriteLine("ScanFileData took " +
- ((DateTime.Now - startWhen).Milliseconds) + " ms");
+ ((DateTime.Now - startWhen).TotalMilliseconds) + " ms");
RepeatedBytes = repeats;
StdAsciiBytes = ascii;
diff --git a/SourceGenWPF/DisplayList.cs b/SourceGenWPF/DisplayList.cs
index 3784fca..8633536 100644
--- a/SourceGenWPF/DisplayList.cs
+++ b/SourceGenWPF/DisplayList.cs
@@ -258,12 +258,23 @@ namespace SourceGenWPF {
return parts;
}
+ ///
+ /// Resets the list, filling it with empty elements.
+ ///
+ /// New size of the list.
public void ResetList(int size) {
+ // TODO: can we recycle existing elements and just add/trim as needed?
Clear();
mList.Capacity = size;
for (int i = 0; i < size; i++) {
- Add(null);
+ // add directly to list so we don't send events
+ mList.Add(null);
}
+
+ // send one big notification at the end; "reset" means "forget everything you knew"
+ OnPropertyChanged(CountString);
+ OnPropertyChanged(IndexerName);
+ OnCollectionReset();
}
public class FormattedParts {
diff --git a/SourceGenWPF/ProjWin/MainWindow.xaml.cs b/SourceGenWPF/ProjWin/MainWindow.xaml.cs
index 9b5081d..418fb42 100644
--- a/SourceGenWPF/ProjWin/MainWindow.xaml.cs
+++ b/SourceGenWPF/ProjWin/MainWindow.xaml.cs
@@ -74,8 +74,8 @@ namespace SourceGenWPF.ProjWin {
// state of Items collection.
PresentationTraceSources.SetTraceLevel(codeListView.ItemContainerGenerator,
PresentationTraceLevel.High);
- }
#endif
+ }
///
/// INotifyPropertyChanged event
@@ -150,7 +150,7 @@ namespace SourceGenWPF.ProjWin {
//codeListView.SelectedItems.Clear();
//listViewSetSelectedItems.Invoke(codeListView, new object[] { codeListView.Items });
- Debug.WriteLine("Select All cmd: " + (DateTime.Now - start).Milliseconds + " ms");
+ Debug.WriteLine("Select All cmd: " + (DateTime.Now - start).TotalMilliseconds + " ms");
}
private void RecentProjectCmd_Executed(object sender, ExecutedRoutedEventArgs e) {