1
0
mirror of https://github.com/fadden/6502bench.git synced 2024-11-26 06:49:19 +00:00
6502bench/SourceGen
Andy McFadden fac2d6a51f Invoke extension scripts when labels they care about change
We were failing to update properly when a label changed if the label
was one that a plugin cared about.  The problem is that a label
add/remove operation skips the code analysis, and a label edit skips
everything but the display update.  Plugins only run during the code
analysis pass, so changes weren't being reflected in the display
list until something caused it to refresh.

The solution is to ask the plugin if the label being changed is one
that it cares about.  This allows the plugin to use the same
wildcard-match logic that it uses elsewhere.

For efficiency, and to reduce clutter in plugins that don't care
about symbols, a new interface class has been created to handle the
"here are the symbols" call and the "do you care about this label"
call.

The program in Examples/Scripts has been updated to show a very
simple single-call plugin and a slightly more complex multi-call
plugin.
2019-10-13 18:32:53 -07:00
..
AsmGen Optionally treat BRKs as two-byte instructions 2019-10-09 14:55:56 -07:00
Examples Invoke extension scripts when labels they care about change 2019-10-13 18:32:53 -07:00
Properties Move WPF code from SourceGenWPF to SourceGen 2019-07-20 13:28:37 -07:00
Res SourceGen After Dark 2019-10-12 17:23:32 -07:00
RuntimeData Invoke extension scripts when labels they care about change 2019-10-13 18:32:53 -07:00
Sandbox Invoke extension scripts when labels they care about change 2019-10-13 18:32:53 -07:00
SGTestData Invoke extension scripts when labels they care about change 2019-10-13 18:32:53 -07:00
Tests Add issues & limitations for scripts to manual 2019-10-07 17:56:35 -07:00
Tools Format ProDOS 8 parameter blocks 2019-10-07 15:42:40 -07:00
WpfGui Rename button text 2019-10-13 15:21:05 -07:00
Anattrib.cs Minor tweaks 2019-09-06 13:47:23 -07:00
App.config Fix startup issues 2019-07-20 17:36:12 -07:00
App.xaml Move WPF code from SourceGenWPF to SourceGen 2019-07-20 13:28:37 -07:00
App.xaml.cs Version 1.4.0-dev1 2019-10-08 13:32:14 -07:00
AppSettings.cs SourceGen After Dark 2019-10-12 17:23:32 -07:00
AutoLabel.cs Move WPF code from SourceGenWPF to SourceGen 2019-07-20 13:28:37 -07:00
ChangeSet.cs Move WPF code from SourceGenWPF to SourceGen 2019-07-20 13:28:37 -07:00
CodeAnalysis.cs Optionally treat BRKs as two-byte instructions 2019-10-09 14:55:56 -07:00
DataAnalysis.cs Check formatted string structure at load time 2019-10-06 17:07:07 -07:00
DefSymbol.cs Allow explicit widths in project/platform symbols, part 3 2019-10-02 16:50:15 -07:00
DisasmProject.cs Invoke extension scripts when labels they care about change 2019-10-13 18:32:53 -07:00
DisplayList.cs Init all FormattedParts strings fields to an empty string 2019-10-06 15:24:22 -07:00
DisplayListSelection.cs Add C64 encodings to instruction and data operand editors 2019-08-15 17:53:12 -07:00
Exporter.cs Init all FormattedParts strings fields to an empty string 2019-10-06 15:24:22 -07:00
ExternalFile.cs Move WPF code from SourceGenWPF to SourceGen 2019-07-20 13:28:37 -07:00
FormatDescriptor.cs Expand set of symbols available to plugins 2019-10-04 16:57:57 -07:00
FormattedOperandCache.cs Add a string operand cache 2019-08-17 17:03:06 -07:00
HelpAccess.cs Move WPF code from SourceGenWPF to SourceGen 2019-07-20 13:28:37 -07:00
LineListGen.cs SourceGen After Dark 2019-10-12 17:23:32 -07:00
LocalVariableLookup.cs Instruction operand editor rework, part 2 2019-09-07 20:56:43 -07:00
LocalVariableTable.cs Add local variable uniquification 2019-08-31 14:19:50 -07:00
MainController.cs SourceGen After Dark 2019-10-12 17:23:32 -07:00
MultiLineComment.cs Move WPF code from SourceGenWPF to SourceGen 2019-07-20 13:28:37 -07:00
NavStack.cs Tweak navigation 2019-10-10 11:57:36 -07:00
PlatformSymbols.cs Correctly handle a label update edge case 2019-10-13 15:53:46 -07:00
ProblemList.cs Expand set of symbols available to plugins 2019-10-04 16:57:57 -07:00
ProjectFile.cs Optionally treat BRKs as two-byte instructions 2019-10-09 14:55:56 -07:00
ProjectProperties.cs Optionally treat BRKs as two-byte instructions 2019-10-09 14:55:56 -07:00
PseudoOp.cs Allow explicit widths in project/platform symbols, part 4 (of 4) 2019-10-03 10:32:54 -07:00
RuntimeDataAccess.cs Move WPF code from SourceGenWPF to SourceGen 2019-07-20 13:28:37 -07:00
SourceGen.csproj SourceGen After Dark 2019-10-12 17:23:32 -07:00
Symbol.cs Expand set of symbols available to plugins 2019-10-04 16:57:57 -07:00
SymbolTable.cs Expand set of symbols available to plugins 2019-10-04 16:57:57 -07:00
SystemDefaults.cs Optionally treat BRKs as two-byte instructions 2019-10-09 14:55:56 -07:00
SystemDefs.cs Move WPF code from SourceGenWPF to SourceGen 2019-07-20 13:28:37 -07:00
UndoableChange.cs Add LocalVariableTable list to project 2019-08-26 16:58:53 -07:00
WeakSymbolRef.cs Add local variable uniquification 2019-08-31 14:19:50 -07:00
XrefSet.cs Instruction operand editor rework, part 2 2019-09-07 20:56:43 -07:00