- # Iterate through triggersIndex to locate necessary ScanCodes and corresponding triggerIndex
- for triggerItem in self.triggersIndex.keys():
- # Iterate over the trigger portion of the triggerItem (other part is the index)
- for sequence in triggerItem[ 0 ]:
- for combo in sequence:
- # Append triggerIndex for each found scanCode of the Trigger List
- # Do not re-add if triggerIndex is already in the Trigger List
- if not triggerItem[1] in self.triggerList[ layer ][ combo ]:
- # Append is working strangely with list pre-initialization
- # Doing a 0 check replacement instead -HaaTa
- if len( self.triggerList[ layer ][ combo ] ) == 0:
- self.triggerList[ layer ][ combo ] = [ triggerItem[ 1 ] ]
- else:
- self.triggerList[ layer ][ combo ].append( triggerItem[1] )
-
- # Look for max Scan Code
- if combo > self.maxScanCode[ layer ]:
- self.maxScanCode[ layer ] = combo
+ # Iterate through trigger macros to locate necessary ScanCodes and corresponding triggerIndex
+ for trigger in self.macros[ layer ].keys():
+ for variant in range( 0, len( self.macros[ layer ][ trigger ] ) ):
+ # Identify result index
+ resultIndex = self.resultsIndex[ self.macros[ layer ][ trigger ][ variant ] ]
+
+ # Identify trigger index
+ triggerIndex = self.triggersIndex[ tuple( [ trigger, resultIndex ] ) ]
+
+ # Iterate over the trigger to locate the ScanCodes
+ for sequence in trigger:
+ for combo in sequence:
+ # Append triggerIndex for each found scanCode of the Trigger List
+ # Do not re-add if triggerIndex is already in the Trigger List
+ if not triggerIndex in self.triggerList[ layer ][ combo ]:
+ # Append is working strangely with list pre-initialization
+ # Doing a 0 check replacement instead -HaaTa
+ if len( self.triggerList[ layer ][ combo ] ) == 0:
+ self.triggerList[ layer ][ combo ] = [ triggerIndex ]
+ else:
+ self.triggerList[ layer ][ combo ].append( triggerIndex )
+
+ # Look for max Scan Code
+ if combo > self.maxScanCode[ layer ]:
+ self.maxScanCode[ layer ] = combo