- self.macros[ self.layer ][ trigger ] = result
-
- # Use for USBCode trigger macros
- # An extra lookup is required
- def appendUSBCode( self, trigger, result ):
- noSuccess = True
-
+ if not trigger in self.macros[ self.layer ]:
+ self.replaceScanCode( trigger, result )
+ else:
+ self.macros[ self.layer ][ trigger ].append( result )
+
+ # Remove the given trigger/result pair
+ def removeScanCode( self, trigger, result ):
+ # Remove all instances of the given trigger/result pair
+ while result in self.macros[ self.layer ][ trigger ]:
+ self.macros[ self.layer ][ trigger ].remove( result )
+
+ # Replaces the given trigger with the given result
+ # If multiple results for a given trigger, clear, then add
+ def replaceScanCode( self, trigger, result ):
+ self.macros[ self.layer ][ trigger ] = [ result ]
+
+ # Return a list of ScanCode triggers with the given USB Code trigger
+ def lookupUSBCodes( self, usbCode ):
+ scanCodeList = []
+
+ # Scan current layer for USB Codes