changeset 29:53e68fe4b8fb

Issue #13: Fixing bug in kll compiler when not setting any DefaultMap or PartialMap - Recent change broke this functionality
author Jacob Alexander <haata@kiibohd.com>
date Fri, 20 Feb 2015 23:43:33 -0800
parents bdcd737cddcb
children 2aa96be4e395
files backends/kiibohd.py
diffstat 1 files changed, 13 insertions(+), 9 deletions(-) [+]
line wrap: on
line diff
--- a/backends/kiibohd.py	Fri Feb 20 21:04:05 2015 -0800
+++ b/backends/kiibohd.py	Fri Feb 20 23:43:33 2015 -0800
@@ -106,12 +106,15 @@
 		partialLayersInfo = ""
 		for file, name in zip( variables.baseLayout['*LayerFiles'], variables.baseLayout['*NameStack'] ):
 			baseLayoutInfo += "//    {0}\n//      {1}\n".format( name, file )
-		for file, name in zip( variables.layerVariables[0]['*LayerFiles'], variables.layerVariables[0]['*NameStack'] ):
-			defaultLayerInfo += "//    {0}\n//      {1}\n".format( name, file )
-		for layer in range( 1, len( variables.layerVariables ) ):
-			partialLayersInfo += "//    Layer {0}\n".format( layer )
-			for file, name in zip( variables.layerVariables[ layer ]['*LayerFiles'], variables.layerVariables[ layer ]['*NameStack'] ):
-				partialLayersInfo += "//     {0}\n//       {1}\n".format( name, file )
+		if '*LayerFiles' in variables.layerVariables[0].keys():
+			for file, name in zip( variables.layerVariables[0]['*LayerFiles'], variables.layerVariables[0]['*NameStack'] ):
+				defaultLayerInfo += "//    {0}\n//      {1}\n".format( name, file )
+		if '*LayerFiles' in variables.layerVariables[1].keys():
+			for layer in range( 1, len( variables.layerVariables ) ):
+				partialLayersInfo += "//    Layer {0}\n".format( layer )
+				if len( variables.layerVariables[ layer ]['*LayerFiles'] ) > 0:
+					for file, name in zip( variables.layerVariables[ layer ]['*LayerFiles'], variables.layerVariables[ layer ]['*NameStack'] ):
+						partialLayersInfo += "//     {0}\n//       {1}\n".format( name, file )
 
 
 		## Information ##
@@ -319,9 +322,10 @@
 
 			# Generate stacked name
 			stackName = ""
-			for name in range( 0, len( variables.layerVariables[ layer ]['*NameStack'] ) ):
-				stackName += "{0} + ".format( variables.layerVariables[ layer ]['*NameStack'][ name ] )
-			stackName = stackName[:-3]
+			if '*NameStack' in variables.layerVariables[ layer ].keys():
+				for name in range( 0, len( variables.layerVariables[ layer ]['*NameStack'] ) ):
+					stackName += "{0} + ".format( variables.layerVariables[ layer ]['*NameStack'][ name ] )
+				stackName = stackName[:-3]
 
 			# Default map is a special case, always the first index
 			if layer == 0: