Refactor Macro Storage for verisoning
TimothyLuke opened this issue ยท 2 comments
#33 will need a way of storing macros and doing versioning. It will also need to be backwards compatible with the GSMasterMacros that people are using now.
Propose that instead of storing
GSMasterMacros[SequenceName] = {
Store this structure instead.
Version = GSActiveMacro[Sequencename]
GSMacroStorage[SequenceName][Version] = {
On mod load evaluate GSMasterMacros and move things in.
Gone further than that.
There are now two entries in GSMasterOptions
GSMasterOptions.SequenceLibrary = {}
GSMasterOptions.ActiveSequenceVersions = {}
ActiveSequenceVersions contains a value that stores the sequence name and its appropriate version. eg
GSMasterOptions.ActiveSequenceVersions ['DB_Ret'] = 3
GSMasterOptions.SequenceLibrary["DB_Ret"][3] = {
author="Draik',
specID=70,
version=3,
--the rest
}
Means the active version of DB_Ret is version 3.
GSMasterSequences is still loaded and processed.
These will save all sequences locally. I will create some boilerplate for Addin Authors to be able to manage their macros further.