Browse Source

Fixing layered assignment bug.

- Layered assignments were lost due to how the cached assignments were replayed
- Replaying each assignment cache after each file is done processing
simple
Jacob Alexander 9 years ago
parent
commit
b4e4a13811
2 changed files with 4 additions and 3 deletions
  1. 2
    2
      kll.py
  2. 2
    1
      kll_lib/containers.py

+ 2
- 2
kll.py View File

@@ -558,8 +558,8 @@ if __name__ == '__main__':
# Default combined layer
for filename in defaultFiles:
processKLLFile( filename )
# Apply assignment cache, see 5.1.2 USB Codes for why this is necessary
macros_map.replayCachedAssignments()
# Apply assignment cache, see 5.1.2 USB Codes for why this is necessary
macros_map.replayCachedAssignments()

# Iterate through additional layers
for partial in partialFileSets:

+ 2
- 1
kll_lib/containers.py View File

@@ -146,7 +146,8 @@ class Macros:
self.macros[ self.layer ][ trigger ] = [ result ]

# Mark layer scan code, so it won't be removed later
if not self.baseLayout is None:
# Also check to see if it hasn't already been removed before
if not self.baseLayout is None and trigger in self.layerLayoutMarkers[ self.layer ]:
del self.layerLayoutMarkers[ self.layer ][ trigger ]

# Return a list of ScanCode triggers with the given USB Code trigger