31 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			31 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| from lnx.logicnode.lnx_nodes import *
 | |
| 
 | |
| class ArrayDisplayNode(LnxLogicTreeNode):
 | |
|     """Returns the display of the given array."""
 | |
|     bl_idname = 'LNArrayDisplayNode'
 | |
|     bl_label = 'Array Display'
 | |
|     lnx_version = 1
 | |
|     
 | |
|     def remove_extra_inputs(self, context):
 | |
|         while len(self.inputs) > 2:
 | |
|             self.inputs.remove(self.inputs[-1])
 | |
|         if self.property0 == 'Item Field':
 | |
|             self.add_input('LnxStringSocket', 'Item Field')
 | |
|         if self.property0 == 'Item Property':
 | |
|             self.add_input('LnxStringSocket', 'Item Property')
 | |
|     
 | |
|     property0: HaxeEnumProperty(
 | |
|     'property0',
 | |
|     items = [('Item', 'Item', 'Array Item'),
 | |
|              ('Item Field', 'Item Field', 'Object Item Field, ie: name, uid, visible, parent, length, etc.'),
 | |
|              ('Item Property', 'Item Property', 'Object Item Property')],
 | |
|     name='', default='Item', update=remove_extra_inputs)
 | |
|     
 | |
|     def lnx_init(self, context):
 | |
|         self.add_input('LnxNodeSocketArray', 'Array')
 | |
|         self.add_input('LnxStringSocket', 'Separator')
 | |
| 
 | |
|         self.add_output('LnxStringSocket', 'Items')
 | |
| 
 | |
|     def draw_buttons(self, context, layout):
 | |
|         layout.prop(self, 'property0') |