mirror of
https://github.com/fadden/6502bench.git
synced 2024-11-09 00:06:05 +00:00
be0e6bead1
This was an attempt to add a "loading..." dialog during the initial open of the project. This can have some lag because we create a sandbox (which is currently taking about 300ms) and do a full project refresh (which can take more than a second on a large 65816 project). The trick is that we need to do these things on a background thread while the main thread manages the UI. We can't manipulate the UI from the background thread. For the most part this works, as the project refresh stuff isn't tied to the UI, but we run into trouble when generating the line list. As currently implemented, the line generator interacts directly with DisplayList, which is acting as an ItemsSource for the main ListView. To make this work correctly we'd need to dissociate DisplayList from LineListGen, e.g. by having DisplayList record but defer changes until a "go" method is called on the main thread. The speed is only an issue for large programs, which aren't really supported yet -- the UI is awkward to use with large files -- so I'm not going to pursue this further for now. Also, an unrelated fix: there was an issue where the current ListView scroll position would be retained if you opened a project while one was already open. Harmless but weird. We now scroll to the top. |
||
---|---|---|
.. | ||
AsmGen | ||
Properties | ||
Res | ||
Sandbox | ||
Tests | ||
Tools | ||
WpfGui | ||
AddressMap.cs | ||
Anattrib.cs | ||
App.config | ||
App.xaml | ||
App.xaml.cs | ||
AppSettings.cs | ||
AutoLabel.cs | ||
ChangeSet.cs | ||
CodeAnalysis.cs | ||
DataAnalysis.cs | ||
DefSymbol.cs | ||
DisasmProject.cs | ||
DisplayList.cs | ||
DisplayListSelection.cs | ||
ExternalFile.cs | ||
FormatDescriptor.cs | ||
HelpAccess.cs | ||
LineListGen.cs | ||
MainController.cs | ||
MultiLineComment.cs | ||
NavStack.cs | ||
PlatformSymbols.cs | ||
ProjectFile.cs | ||
ProjectProperties.cs | ||
PseudoOp.cs | ||
RuntimeDataAccess.cs | ||
SourceGenWPF.csproj | ||
Symbol.cs | ||
SymbolTable.cs | ||
SystemDefaults.cs | ||
SystemDefs.cs | ||
UndoableChange.cs | ||
WeakSymbolRef.cs | ||
XrefSet.cs |