From 392da64d1fa29a6b35a278aff8180e8c4b7519f7 Mon Sep 17 00:00:00 2001 From: Onek8 Date: Thu, 3 Apr 2025 09:24:45 +0000 Subject: [PATCH 01/31] Update leenkx/blender/lnx/logicnode/animation/LN_blend_space_gpu.py --- leenkx/blender/lnx/logicnode/animation/LN_blend_space_gpu.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/leenkx/blender/lnx/logicnode/animation/LN_blend_space_gpu.py b/leenkx/blender/lnx/logicnode/animation/LN_blend_space_gpu.py index 97814f2..24f636e 100644 --- a/leenkx/blender/lnx/logicnode/animation/LN_blend_space_gpu.py +++ b/leenkx/blender/lnx/logicnode/animation/LN_blend_space_gpu.py @@ -90,7 +90,8 @@ class BlendSpaceNode(LnxLogicTreeNode): draw_handler_dict = {} modal_handler_dict = {} - def __init__(self): + def __init__(self, *args, **kwargs): + super(BlendSpaceNode, self).__init__(*args, **kwargs) array_nodes[str(id(self))] = self if self.advanced_draw_run: self.add_advanced_draw() From 74473087b5933aed30e18ba1095c33d8b96ebb49 Mon Sep 17 00:00:00 2001 From: Onek8 Date: Thu, 3 Apr 2025 09:26:00 +0000 Subject: [PATCH 02/31] Update leenkx/blender/lnx/logicnode/animation/LN_one_shot_action_multi.py --- .../lnx/logicnode/animation/LN_one_shot_action_multi.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/leenkx/blender/lnx/logicnode/animation/LN_one_shot_action_multi.py b/leenkx/blender/lnx/logicnode/animation/LN_one_shot_action_multi.py index a339e22..699e0de 100644 --- a/leenkx/blender/lnx/logicnode/animation/LN_one_shot_action_multi.py +++ b/leenkx/blender/lnx/logicnode/animation/LN_one_shot_action_multi.py @@ -8,8 +8,8 @@ class OneShotActionMultiNode(LnxLogicTreeNode): lnx_version = 1 min_inputs = 10 - def __init__(self): - super(OneShotActionMultiNode, self).__init__() + def __init__(self, *args, **kwargs): + super(OneShotActionMultiNode, self).__init__(*args, **kwargs) array_nodes[self.get_id_str()] = self property0: HaxeStringProperty('property0', name = 'Action ID', default = '') From 62d3e65796f6e5f2238c4e9d70d8929a8e4957a4 Mon Sep 17 00:00:00 2001 From: Onek8 Date: Thu, 3 Apr 2025 09:27:03 +0000 Subject: [PATCH 03/31] Update leenkx/blender/lnx/logicnode/animation/LN_switch_action_multi.py --- .../blender/lnx/logicnode/animation/LN_switch_action_multi.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/leenkx/blender/lnx/logicnode/animation/LN_switch_action_multi.py b/leenkx/blender/lnx/logicnode/animation/LN_switch_action_multi.py index 52e5b76..1c32fda 100644 --- a/leenkx/blender/lnx/logicnode/animation/LN_switch_action_multi.py +++ b/leenkx/blender/lnx/logicnode/animation/LN_switch_action_multi.py @@ -7,8 +7,8 @@ class SwitchActionMultiNode(LnxLogicTreeNode): lnx_version = 1 min_inputs = 8 - def __init__(self): - super(SwitchActionMultiNode, self).__init__() + def __init__(self, *args, **kwargs): + super(SwitchActionMultiNode, self).__init__(*args, **kwargs) array_nodes[self.get_id_str()] = self def lnx_init(self, context): From d2746fb087d293e01942ac861c7b029a67c05e71 Mon Sep 17 00:00:00 2001 From: Onek8 Date: Thu, 3 Apr 2025 09:27:55 +0000 Subject: [PATCH 04/31] Update leenkx/blender/lnx/logicnode/array/LN_array.py --- leenkx/blender/lnx/logicnode/array/LN_array.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/leenkx/blender/lnx/logicnode/array/LN_array.py b/leenkx/blender/lnx/logicnode/array/LN_array.py index 91f472e..674385e 100644 --- a/leenkx/blender/lnx/logicnode/array/LN_array.py +++ b/leenkx/blender/lnx/logicnode/array/LN_array.py @@ -9,7 +9,8 @@ class ArrayNode(LnxLogicVariableNodeMixin, LnxLogicTreeNode): lnx_section = 'variable' min_inputs = 0 - def __init__(self): + def __init__(self, *args, **kwargs): + super(ArrayNode, self).__init__(*args, **kwargs) self.register_id() def lnx_init(self, context): From de41800e1cd991258a9e8e4e88e9efb905e974e5 Mon Sep 17 00:00:00 2001 From: Onek8 Date: Thu, 3 Apr 2025 09:28:34 +0000 Subject: [PATCH 05/31] Update leenkx/blender/lnx/logicnode/array/LN_array_add.py --- leenkx/blender/lnx/logicnode/array/LN_array_add.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/leenkx/blender/lnx/logicnode/array/LN_array_add.py b/leenkx/blender/lnx/logicnode/array/LN_array_add.py index 5b738c5..6f58cd3 100644 --- a/leenkx/blender/lnx/logicnode/array/LN_array_add.py +++ b/leenkx/blender/lnx/logicnode/array/LN_array_add.py @@ -12,8 +12,8 @@ class ArrayAddNode(LnxLogicTreeNode): lnx_version = 5 min_inputs = 6 - def __init__(self): - super(ArrayAddNode, self).__init__() + def __init__(self, *args, **kwargs): + super(ArrayAddNode, self).__init__(*args, **kwargs) array_nodes[self.get_id_str()] = self def lnx_init(self, context): From b639f06aba6086f1d1b28842335e9e67a3f44971 Mon Sep 17 00:00:00 2001 From: Onek8 Date: Thu, 3 Apr 2025 09:29:40 +0000 Subject: [PATCH 06/31] Update leenkx/blender/lnx/logicnode/array/LN_array_boolean.py --- leenkx/blender/lnx/logicnode/array/LN_array_boolean.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/leenkx/blender/lnx/logicnode/array/LN_array_boolean.py b/leenkx/blender/lnx/logicnode/array/LN_array_boolean.py index bf1d4da..a23b6c9 100644 --- a/leenkx/blender/lnx/logicnode/array/LN_array_boolean.py +++ b/leenkx/blender/lnx/logicnode/array/LN_array_boolean.py @@ -9,8 +9,8 @@ class BooleanArrayNode(LnxLogicVariableNodeMixin, LnxLogicTreeNode): lnx_section = 'variable' min_inputs = 0 - def __init__(self): - super(BooleanArrayNode, self).__init__() + def __init__(self, *args, **kwargs): + super(BooleanArrayNode, self).__init__(*args, **kwargs) self.register_id() def lnx_init(self, context): From caf95e2611b06d171f4ee222c3bb930240f7d787 Mon Sep 17 00:00:00 2001 From: Onek8 Date: Thu, 3 Apr 2025 09:30:04 +0000 Subject: [PATCH 07/31] Update leenkx/blender/lnx/logicnode/array/LN_array_color.py --- leenkx/blender/lnx/logicnode/array/LN_array_color.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/leenkx/blender/lnx/logicnode/array/LN_array_color.py b/leenkx/blender/lnx/logicnode/array/LN_array_color.py index 9a1a3ef..6c76ef8 100644 --- a/leenkx/blender/lnx/logicnode/array/LN_array_color.py +++ b/leenkx/blender/lnx/logicnode/array/LN_array_color.py @@ -9,8 +9,8 @@ class ColorArrayNode(LnxLogicVariableNodeMixin, LnxLogicTreeNode): lnx_section = 'variable' min_inputs = 0 - def __init__(self): - super(ColorArrayNode, self).__init__() + def __init__(self, *args, **kwargs): + super(ColorArrayNode, self).__init__(*args, **kwargs) self.register_id() def lnx_init(self, context): From de8f7d08ed0e1a0c86f3e3d02a7d6bd9e6e9695f Mon Sep 17 00:00:00 2001 From: Onek8 Date: Thu, 3 Apr 2025 09:30:57 +0000 Subject: [PATCH 08/31] Update leenkx/blender/lnx/logicnode/array/LN_array_float.py --- leenkx/blender/lnx/logicnode/array/LN_array_float.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/leenkx/blender/lnx/logicnode/array/LN_array_float.py b/leenkx/blender/lnx/logicnode/array/LN_array_float.py index adcdfb2..e249cf1 100644 --- a/leenkx/blender/lnx/logicnode/array/LN_array_float.py +++ b/leenkx/blender/lnx/logicnode/array/LN_array_float.py @@ -9,8 +9,8 @@ class FloatArrayNode(LnxLogicVariableNodeMixin, LnxLogicTreeNode): lnx_section = 'variable' min_inputs = 0 - def __init__(self): - super(FloatArrayNode, self).__init__() + def __init__(self, *args, **kwargs): + super(FloatArrayNode, self).__init__(*args, **kwargs) self.register_id() def lnx_init(self, context): From 82a7075308b3937161538be8b203bf6ecb17d9fc Mon Sep 17 00:00:00 2001 From: Onek8 Date: Thu, 3 Apr 2025 09:31:30 +0000 Subject: [PATCH 09/31] Update leenkx/blender/lnx/logicnode/array/LN_array_integer.py --- leenkx/blender/lnx/logicnode/array/LN_array_integer.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/leenkx/blender/lnx/logicnode/array/LN_array_integer.py b/leenkx/blender/lnx/logicnode/array/LN_array_integer.py index 6b800b2..62bced2 100644 --- a/leenkx/blender/lnx/logicnode/array/LN_array_integer.py +++ b/leenkx/blender/lnx/logicnode/array/LN_array_integer.py @@ -9,8 +9,8 @@ class IntegerArrayNode(LnxLogicVariableNodeMixin, LnxLogicTreeNode): lnx_section = 'variable' min_inputs = 0 - def __init__(self): - super(IntegerArrayNode, self).__init__() + def __init__(self, *args, **kwargs): + super(IntegerArrayNode, self).__init__(*args, **kwargs) self.register_id() def lnx_init(self, context): From 1e0d32a88d6c57b1a3834c33d9ee0c0d7fa88e89 Mon Sep 17 00:00:00 2001 From: Onek8 Date: Thu, 3 Apr 2025 09:32:27 +0000 Subject: [PATCH 10/31] Update leenkx/blender/lnx/logicnode/array/LN_array_object.py --- leenkx/blender/lnx/logicnode/array/LN_array_object.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/leenkx/blender/lnx/logicnode/array/LN_array_object.py b/leenkx/blender/lnx/logicnode/array/LN_array_object.py index 84919d6..ba57348 100644 --- a/leenkx/blender/lnx/logicnode/array/LN_array_object.py +++ b/leenkx/blender/lnx/logicnode/array/LN_array_object.py @@ -9,8 +9,8 @@ class ObjectArrayNode(LnxLogicVariableNodeMixin, LnxLogicTreeNode): lnx_section = 'variable' min_inputs = 0 - def __init__(self): - super(ObjectArrayNode, self).__init__() + def __init__(self, *args, **kwargs): + super(ObjectArrayNode, self).__init__(*args, **kwargs) self.register_id() def lnx_init(self, context): From 603a976adf8a76c42bfe182c173c5fce2385f0af Mon Sep 17 00:00:00 2001 From: Onek8 Date: Thu, 3 Apr 2025 09:32:59 +0000 Subject: [PATCH 11/31] Update leenkx/blender/lnx/logicnode/array/LN_array_string.py --- leenkx/blender/lnx/logicnode/array/LN_array_string.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/leenkx/blender/lnx/logicnode/array/LN_array_string.py b/leenkx/blender/lnx/logicnode/array/LN_array_string.py index 5236076..c6ae3cd 100644 --- a/leenkx/blender/lnx/logicnode/array/LN_array_string.py +++ b/leenkx/blender/lnx/logicnode/array/LN_array_string.py @@ -9,8 +9,8 @@ class StringArrayNode(LnxLogicVariableNodeMixin, LnxLogicTreeNode): lnx_section = 'variable' min_inputs = 0 - def __init__(self): - super(StringArrayNode, self).__init__() + def __init__(self, *args, **kwargs): + super(StringArrayNode, self).__init__(*args, **kwargs) self.register_id() def lnx_init(self, context): From 2f1e6783a41e327f2b793c7f5e29b44c7f40edef Mon Sep 17 00:00:00 2001 From: Onek8 Date: Thu, 3 Apr 2025 09:33:39 +0000 Subject: [PATCH 12/31] Update leenkx/blender/lnx/logicnode/array/LN_array_vector.py --- leenkx/blender/lnx/logicnode/array/LN_array_vector.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/leenkx/blender/lnx/logicnode/array/LN_array_vector.py b/leenkx/blender/lnx/logicnode/array/LN_array_vector.py index eb1ba27..f372925 100644 --- a/leenkx/blender/lnx/logicnode/array/LN_array_vector.py +++ b/leenkx/blender/lnx/logicnode/array/LN_array_vector.py @@ -9,8 +9,9 @@ class VectorArrayNode(LnxLogicVariableNodeMixin, LnxLogicTreeNode): lnx_section = 'variable' min_inputs = 0 - def __init__(self): - super(VectorArrayNode, self).__init__() + def __init__(self, *args, **kwargs): + super(VectorArrayNode, self).__init__(*args, **kwargs) + self.register_id() def lnx_init(self, context): From d6b4b6eeea3471239ddc00efd4006ca309bed1c3 Mon Sep 17 00:00:00 2001 From: Onek8 Date: Thu, 3 Apr 2025 09:34:21 +0000 Subject: [PATCH 13/31] Update leenkx/blender/lnx/logicnode/custom/LN_add_torrent.py --- leenkx/blender/lnx/logicnode/custom/LN_add_torrent.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/leenkx/blender/lnx/logicnode/custom/LN_add_torrent.py b/leenkx/blender/lnx/logicnode/custom/LN_add_torrent.py index a98734c..ba743ee 100644 --- a/leenkx/blender/lnx/logicnode/custom/LN_add_torrent.py +++ b/leenkx/blender/lnx/logicnode/custom/LN_add_torrent.py @@ -9,7 +9,8 @@ class AddTorrentNode(LnxLogicTreeNode): lnx_category = 'Leenkx' lnx_version = 1 - def __init__(self): + def __init__(self, *args, **kwargs): + super(AddTorrentNode, self).__init__(*args, **kwargs) array_nodes[str(id(self))] = self From 3ab9123000ca5376cf3b0afcadce23794a3624cb Mon Sep 17 00:00:00 2001 From: Onek8 Date: Thu, 3 Apr 2025 09:34:57 +0000 Subject: [PATCH 14/31] Update leenkx/blender/lnx/logicnode/custom/LN_call_wasm.py --- .../lnx/logicnode/custom/LN_call_wasm.py | 106 +++++++++--------- 1 file changed, 53 insertions(+), 53 deletions(-) diff --git a/leenkx/blender/lnx/logicnode/custom/LN_call_wasm.py b/leenkx/blender/lnx/logicnode/custom/LN_call_wasm.py index 0ada0e9..8d1f37e 100644 --- a/leenkx/blender/lnx/logicnode/custom/LN_call_wasm.py +++ b/leenkx/blender/lnx/logicnode/custom/LN_call_wasm.py @@ -1,54 +1,54 @@ -from lnx.logicnode.lnx_nodes import * - - -class CallWASMNode(LnxLogicTreeNode): - """Call WASM""" - bl_idname = 'LNCallWASMNode' - bl_label = 'Call WASM' - bl_description = 'Call WASM' - lnx_category = 'HTML' - lnx_version = 1 - min_inputs = 3 - - property1: HaxeBoolProperty( - 'property1', - name="Secure", - description="Assignment", - default=False, - ) - - def __init__(self): - super(CallWASMNode, self).__init__() - array_nodes[str(id(self))] = self - - def lnx_init(self, context): - self.add_input('LnxNodeSocketAction', 'In') - self.add_input('LnxDynamicSocket', 'WASM') - self.add_input('LnxStringSocket', 'Call') - - self.add_output('LnxNodeSocketAction', 'Out') - self.add_output('LnxDynamicSocket', 'Result') - - def draw_buttons(self, context, layout): - #layout.prop(self, 'property1') - row = layout.row(align=True) - op = row.operator('lnx.node_add_input', text='Add Arg', icon='PLUS', emboss=True) - op.node_index = str(id(self)) - op.socket_type = 'LnxDynamicSocket' - op.name_format = "Arg {0}" - op.index_name_offset = -2 - column = row.column(align=True) - op = column.operator('lnx.node_remove_input', text='', icon='X', emboss=True) - op.node_index = str(id(self)) - if len(self.inputs) == self.min_inputs: - column.enabled = False - - def get_replacement_node(self, node_tree: bpy.types.NodeTree): - if self.lnx_version not in (0, 1): - raise LookupError() - - return NodeReplacement.Identity(self) - -def register(): - add_category('HTML', icon='SEQ_STRIP_META') +from lnx.logicnode.lnx_nodes import * + + +class CallWASMNode(LnxLogicTreeNode): + """Call WASM""" + bl_idname = 'LNCallWASMNode' + bl_label = 'Call WASM' + bl_description = 'Call WASM' + lnx_category = 'HTML' + lnx_version = 1 + min_inputs = 3 + + property1: HaxeBoolProperty( + 'property1', + name="Secure", + description="Assignment", + default=False, + ) + + def __init__(self, *args, **kwargs): + super(CallWASMNode, self).__init__(*args, **kwargs) + array_nodes[str(id(self))] = self + + def lnx_init(self, context): + self.add_input('LnxNodeSocketAction', 'In') + self.add_input('LnxDynamicSocket', 'WASM') + self.add_input('LnxStringSocket', 'Call') + + self.add_output('LnxNodeSocketAction', 'Out') + self.add_output('LnxDynamicSocket', 'Result') + + def draw_buttons(self, context, layout): + #layout.prop(self, 'property1') + row = layout.row(align=True) + op = row.operator('lnx.node_add_input', text='Add Arg', icon='PLUS', emboss=True) + op.node_index = str(id(self)) + op.socket_type = 'LnxDynamicSocket' + op.name_format = "Arg {0}" + op.index_name_offset = -2 + column = row.column(align=True) + op = column.operator('lnx.node_remove_input', text='', icon='X', emboss=True) + op.node_index = str(id(self)) + if len(self.inputs) == self.min_inputs: + column.enabled = False + + def get_replacement_node(self, node_tree: bpy.types.NodeTree): + if self.lnx_version not in (0, 1): + raise LookupError() + + return NodeReplacement.Identity(self) + +def register(): + add_category('HTML', icon='SEQ_STRIP_META') CallWASMNode.on_register() \ No newline at end of file From 2a3f8db0bc2bedb23439bbd2c47c636a6c25b345 Mon Sep 17 00:00:00 2001 From: Onek8 Date: Thu, 3 Apr 2025 09:36:23 +0000 Subject: [PATCH 15/31] Update leenkx/blender/lnx/logicnode/custom/LN_create_style.py --- .../lnx/logicnode/custom/LN_create_style.py | 902 +++++++++--------- 1 file changed, 451 insertions(+), 451 deletions(-) diff --git a/leenkx/blender/lnx/logicnode/custom/LN_create_style.py b/leenkx/blender/lnx/logicnode/custom/LN_create_style.py index 9220182..c2d3eb5 100644 --- a/leenkx/blender/lnx/logicnode/custom/LN_create_style.py +++ b/leenkx/blender/lnx/logicnode/custom/LN_create_style.py @@ -1,451 +1,451 @@ -import array -from lnx.logicnode.lnx_nodes import * - - -class CreateStyleNode(LnxLogicTreeNode): - """Create Style""" - bl_idname = 'LNCreateStyleNode' - bl_label = 'Create Style' - bl_description = 'Create Style' - lnx_category = 'HTML' - lnx_version = 1 - min_inputs = 1 - - - - - @staticmethod - def get_enum_id_value(obj, prop_name, value): - return obj.bl_rna.properties[prop_name].enum_items[value].identifier - - @staticmethod - def get_count_in(type_name): - return { - 'align-content': 0, - 'align-items': 1, - 'align-self': 2, - 'animation-delay': 3, - 'animation-direction': 4, - 'animation-duration': 5, - 'animation-fill-mode': 6, - 'animation-iteration-count': 7, - 'animation-name': 8, - 'animation-play-state': 9, - 'animation-timing-function': 10, - 'backface-visibility': 11, - 'background': 12, - 'background-attachment': 13, - 'background-clip': 14, - 'background-color': 15, - 'background-image': 16, - 'background-origin': 17, - 'background-position': 18, - 'background-repeat': 19, - 'background-size': 20, - 'border': 21, - 'border-bottom': 22, - 'border-bottom-color': 23, - 'border-bottom-left-radius': 24, - 'border-bottom-right-radius': 25, - 'border-bottom-style': 26, - 'border-bottom-width': 27, - 'border-collapse': 28, - 'border-color': 29, - 'border-image': 30, - 'border-image-outset': 31, - 'border-image-repeat': 32, - 'border-image-slice': 33, - 'border-image-source': 34, - 'border-image-width': 35, - 'border-left': 36, - 'border-left-color': 37, - 'border-left-style': 38, - 'border-left-width': 39, - 'border-radius': 40, - 'border-right': 41, - 'border-right-color': 42, - 'border-right-style': 43, - 'border-right-width': 44, - 'border-spacing': 45, - 'border-style': 46, - 'border-top': 47, - 'border-top-color': 48, - 'border-top-left-radius': 49, - 'border-top-right-radius': 50, - 'border-top-style': 51, - 'border-top-width': 52, - 'border-width': 53, - 'bottom': 54, - 'box-shadow': 55, - 'box-sizing': 56, - 'caption-side': 57, - 'clear': 58, - 'clip': 59, - 'color': 60, - 'column-count': 61, - 'column-fill': 62, - 'column-gap': 63, - 'column-rule': 64, - 'column-rule-color': 65, - 'column-rule-style': 66, - 'column-rule-width': 67, - 'column-span': 68, - 'column-width': 69, - 'columns': 70, - 'content': 71, - 'counter-increment': 72, - 'counter-reset': 73, - 'cursor': 74, - 'direction': 75, - 'display': 76, - 'empty-cells': 77, - 'flex': 78, - 'flex-basis': 79, - 'flex-direction': 80, - 'flex-flow': 81, - 'flex-grow': 82, - 'flex-shrink': 83, - 'flex-wrap': 84, - 'float': 85, - 'font': 86, - 'font-family': 87, - 'font-size': 88, - 'font-size-adjust': 89, - 'font-stretch': 90, - 'font-style': 91, - 'font-variant': 92, - 'font-weight': 93, - 'height': 94, - 'justify-content': 95, - 'left': 96, - 'letter-spacing': 97, - 'line-height': 98, - 'list-style': 99, - 'list-style-image': 100, - 'list-style-position': 101, - 'list-style-type': 102, - 'margin': 103, - 'margin-bottom': 104, - 'margin-left': 105, - 'margin-right': 106, - 'margin-top': 107, - 'max-height': 108, - 'max-width': 109, - 'min-height': 110, - 'min-width': 111, - 'opacity': 112, - 'order': 113, - 'outline': 114, - 'outline-color': 115, - 'outline-offset': 116, - 'outline-style': 117, - 'outline-width': 118, - 'overflow': 119, - 'overflow-x': 120, - 'overflow-y': 121, - 'padding': 122, - 'padding-bottom': 123, - 'padding-left': 124, - 'padding-right': 125, - 'padding-top': 126, - 'page-break-after': 127, - 'page-break-before': 128, - 'page-break-inside': 129, - 'perspective': 130, - 'perspective-origin': 131, - 'position': 132, - 'quotes': 133, - 'resize': 134, - 'right': 135, - 'tab-size': 136, - 'table-layout': 137, - 'text-align': 138, - 'text-align-last': 139, - 'text-decoration': 140, - 'text-decoration-color': 141, - 'text-decoration-line': 142, - 'text-decoration-style': 143, - 'text-indent': 144, - 'text-justify': 145, - 'text-overflow': 146, - 'text-shadow': 147, - 'text-transform': 148, - 'top': 149, - 'transform': 150, - 'transform-origin': 151, - 'transform-style': 152, - 'transition': 153, - 'transition-delay': 154, - 'transition-duration': 155, - 'transition-property': 156, - 'transition-timing-function': 157, - 'vertical-align': 158, - 'visibility': 159, - 'white-space': 160, - 'width': 161, - 'word-break': 162, - 'word-spacing': 163, - 'word-wrap': 164, - 'z-index': 165 - }.get(type_name, 60) - - def get_enum(self): - ind = 0 - properties = '' - for i in self.inputs: - if ind != 0: - properties += self.inputs[ind].name + ':' - ind += 1 - - self['property1'] = properties - - return self.get('property0', 60) - - def set_enum(self, value): - select_current = self.get_enum_id_value(self, 'property0', value) - select_prev = self.property0 - - if select_prev != select_current: - self.add_input('LnxStringSocket', select_current) - - self['property0'] = value - - ind = 0 - properties = '' - for i in self.inputs: - if ind != 0: - properties += self.inputs[ind].name + ':' - ind += 1 - - self['property1'] = properties - - - property0: HaxeEnumProperty( - 'property0', - items = [('align-content', 'align-content', 'Align Content'), - ('align-items', 'align-items', 'Align Items'), - ('align-self', 'align-self', 'Align Self'), - ('animation-delay', 'animation-delay', 'Animation Delay'), - ('animation-direction', 'animation-direction', 'Animation Direction'), - ('animation-duration', 'animation-duration', 'Animation Duration'), - ('animation-fill-mode', 'animation-fill-mode', 'Animation Fill Mode'), - ('animation-iteration-count', 'animation-iteration-count', 'Animation Iteration Count'), - ('animation-name', 'animation-name', 'Animation Name'), - ('animation-play-state', 'animation-play-state', 'Animation Play State'), - ('animation-timing-function', 'animation-timing-function', 'Animation Timing Function'), - ('backface-visibility', 'backface-visibility', 'Backface Visibility'), - ('background', 'background', 'Background'), - ('background-attachment', 'background-attachment', 'Background Attachment'), - ('background-clip', 'background-clip', 'Background Clip'), - ('background-color', 'background-color', 'Background Color'), - ('background-image', 'background-image', 'Background Image'), - ('background-origin', 'background-origin', 'Background Origin'), - ('background-position', 'background-position', 'Background Position'), - ('background-repeat', 'background-repeat', 'Background Repeat'), - ('background-size', 'background-size', 'Background Size'), - ('border', 'border', 'Border'), - ('border-bottom', 'border-bottom', 'Border Bottom'), - ('border-bottom-color', 'border-bottom-color', 'Border Bottom Color'), - ('border-bottom-left-radius', 'border-bottom-left-radius', 'Border Bottom Left Radius'), - ('border-bottom-right-radius', 'border-bottom-right-radius', 'Border Bottom Right Radius'), - ('border-bottom-style', 'border-bottom-style', 'Border Bottom Style'), - ('border-bottom-width', 'border-bottom-width', 'Border Bottom Width'), - ('border-collapse', 'border-collapse', 'Border Collapse'), - ('border-color', 'border-color', 'Border Color'), - ('border-image', 'border-image', 'Border Image'), - ('border-image-outset', 'border-image-outset', 'Border Image Outset'), - ('border-image-repeat', 'border-image-repeat', 'Border Image Repeat'), - ('border-image-slice', 'border-image-slice', 'Border Image Slice'), - ('border-image-source', 'border-image-source', 'Border Image Source'), - ('border-image-width', 'border-image-width', 'Border Image Width'), - ('border-left', 'border-left', 'Border Left'), - ('border-left-color', 'border-left-color', 'Border Left Color'), - ('border-left-style', 'border-left-style', 'Border Left Style'), - ('border-left-width', 'border-left-width', 'Border Left Width'), - ('border-radius', 'border-radius', 'Border Radius'), - ('border-right', 'border-right', 'Border Right'), - ('border-right-color', 'border-right-color', 'Border Right Color'), - ('border-right-style', 'border-right-style', 'Border Right Style'), - ('border-right-width', 'border-right-width', 'Border Right Width'), - ('border-spacing', 'border-spacing', 'Border Spacing'), - ('border-style', 'border-style', 'Border Style'), - ('border-top', 'border-top', 'Border Top'), - ('border-top-color', 'border-top-color', 'Border Top Color'), - ('border-top-left-radius', 'border-top-left-radius', 'Border Top Left Radius'), - ('border-top-right-radius', 'border-top-right-radius', 'Border Top Right Radius'), - ('border-top-style', 'border-top-style', 'Border Top Style'), - ('border-top-width', 'border-top-width', 'Border Top Width'), - ('border-width', 'border-width', 'Border Width'), - ('bottom', 'bottom', 'Bottom'), - ('box-shadow', 'box-shadow', 'Box Shadow'), - ('box-sizing', 'box-sizing', 'Box Sizing'), - ('caption-side', 'caption-side', 'Caption Side'), - ('clear', 'clear', 'Clear'), - ('clip', 'clip', 'Clip'), - ('color', 'color', 'Color'), - ('column-count', 'column-count', 'Column Count'), - ('column-fill', 'column-fill', 'Column Fill'), - ('column-gap', 'column-gap', 'Column Gap'), - ('column-rule', 'column-rule', 'Column Rule'), - ('column-rule-color', 'column-rule-color', 'Column Rule Color'), - ('column-rule-style', 'column-rule-style', 'Column Rule Style'), - ('column-rule-width', 'column-rule-width', 'Column Rule Width'), - ('column-span', 'column-span', 'Column Span'), - ('column-width', 'column-width', 'Column Width'), - ('columns', 'columns', 'Columns'), - ('content', 'content', 'Content'), - ('counter-increment', 'counter-increment', 'Counter Increment'), - ('counter-reset', 'counter-reset', 'Counter Reset'), - ('cursor', 'cursor', 'Cursor'), - ('direction', 'direction', 'Direction'), - ('display', 'display', 'Display'), - ('empty-cells', 'empty-cells', 'Empty Cells'), - ('flex', 'flex', 'Flex'), - ('flex-basis', 'flex-basis', 'Flex Basis'), - ('flex-direction', 'flex-direction', 'Flex Direction'), - ('flex-flow', 'flex-flow', 'Flex Flow'), - ('flex-grow', 'flex-grow', 'Flex Grow'), - ('flex-shrink', 'flex-shrink', 'Flex Shrink'), - ('flex-wrap', 'flex-wrap', 'Flex Wrap'), - ('float', 'float', 'Float'), - ('font', 'font', 'Font'), - ('font-family', 'font-family', 'Font Family'), - ('font-size', 'font-size', 'Font Size'), - ('font-size-adjust', 'font-size-adjust', 'Font Size Adjust'), - ('font-stretch', 'font-stretch', 'Font Stretch'), - ('font-style', 'font-style', 'Font Style'), - ('font-variant', 'font-variant', 'Font Variant'), - ('font-weight', 'font-weight', 'Font Weight'), - ('height', 'height', 'Height'), - ('justify-content', 'justify-content', 'Justify Content'), - ('left', 'left', 'Left'), - ('letter-spacing', 'letter-spacing', 'Letter Spacing'), - ('line-height', 'line-height', 'Line Height'), - ('list-style', 'list-style', 'List Style'), - ('list-style-image', 'list-style-image', 'List Style Image'), - ('list-style-position', 'list-style-position', 'List Style Position'), - ('list-style-type', 'list-style-type', 'List Style Type'), - ('margin', 'margin', 'Margin'), - ('margin-bottom', 'margin-bottom', 'Margin Bottom'), - ('margin-left', 'margin-left', 'Margin Left'), - ('margin-right', 'margin-right', 'Margin Right'), - ('margin-top', 'margin-top', 'Margin Top'), - ('max-height', 'max-height', 'Max Height'), - ('max-width', 'max-width', 'Max Width'), - ('min-height', 'min-height', 'Min Height'), - ('min-width', 'min-width', 'Min Width'), - ('opacity', 'opacity', 'Opacity'), - ('order', 'order', 'Order'), - ('outline', 'outline', 'Outline'), - ('outline-color', 'outline-color', 'Outline Color'), - ('outline-offset', 'outline-offset', 'Outline Offset'), - ('outline-style', 'outline-style', 'Outline Style'), - ('outline-width', 'outline-width', 'Outline Sidth'), - ('overflow', 'overflow', 'Overflow'), - ('overflow-x', 'overflow-x', 'Overflow X'), - ('overflow-y', 'overflow-y', 'Overflow Y'), - ('padding', 'padding', 'Padding'), - ('padding-bottom', 'padding-bottom', 'Padding Bottom'), - ('padding-left', 'padding-left', 'Padding Left'), - ('padding-right', 'padding-right', 'Padding Right'), - ('padding-top', 'padding-top', 'Padding Top'), - ('page-break-after', 'page-break-after', 'Page Break After'), - ('page-break-before', 'page-break-before', 'Page Break Before'), - ('page-break-inside', 'page-break-inside', 'Page Break Inside'), - ('perspective', 'perspective', 'Perspective'), - ('perspective-origin', 'perspective-origin', 'Perspective Origin'), - ('position', 'position', 'Position'), - ('quotes', 'quotes', 'Quotes'), - ('resize', 'resize', 'Resize'), - ('right', 'right', 'Right'), - ('tab-size', 'tab-size', 'Tab Size'), - ('table-layout', 'table-layout', 'Table Layout'), - ('text-align', 'text-align', 'Text Align'), - ('text-align-last', 'text-align-last', 'Text Align Last'), - ('text-decoration', 'text-decoration', 'Text Decoration'), - ('text-decoration-color', 'text-decoration-color', 'Text Decoration Color'), - ('text-decoration-line', 'text-decoration-line', 'Text Decoration Line'), - ('text-decoration-style', 'text-decoration-style', 'Text Decoration Style'), - ('text-indent', 'text-indent', 'Text Indent'), - ('text-justify', 'text-justify', 'Text Justify'), - ('text-overflow', 'text-overflow', 'Text Overflow'), - ('text-shadow', 'text-shadow', 'Text Shadow'), - ('text-transform', 'text-transform', 'Text Transform'), - ('top', 'top', 'Top'), - ('transform', 'transform', 'Transform'), - ('transform-origin', 'transform-origin', 'Transform Origin'), - ('transform-style', 'transform-style', 'Transform Style'), - ('transition', 'transition', 'Transition'), - ('transition-delay', 'transition-delay', 'Transition Delay'), - ('transition-duration', 'transition-duration', 'Transition Duration'), - ('transition-property', 'transition-property', 'Transition Property'), - ('transition-timing-function', 'transition-timing-function', 'Transition Timing Function'), - ('vertical-align', 'vertical-align', 'Vertical Align'), - ('visibility', 'visibility', 'Visibility'), - ('white-space', 'white-space', 'White Space'), - ('width', 'width', 'Width'), - ('word-break', 'word-break', 'Word Break'), - ('word-spacing', 'word-spacing', 'Word Spacing'), - ('word-wrap', 'word-wrap', 'Word Wrap'), - ('z-index', 'z-index', 'Z Index')], - name='', - default='color', - #update=set_properties, - set=set_enum, - get=get_enum) - - property1: HaxeStringProperty( - 'property1', - name='', - default='') - - property2: HaxeBoolProperty( - 'property2', - name='Append CSS', - default=False) - - - - def __init__(self): - super(CreateStyleNode, self).__init__() - array_nodes[str(id(self))] = self - - def lnx_init(self, context): - self.add_input('LnxStringSocket', 'Class Name') - - self.add_output('LnxStringSocket', 'Class') - self.add_output('LnxStringSocket', 'Inline Style') - self.add_output('LnxStringSocket', 'CSS') - ind = 0 - properties = '' - - for i in self.inputs: - if ind != 0: - properties += self.inputs[ind].name + ':' - ind += 1 - self['property1'] = properties - - - - def draw_buttons(self, context, layout): - layout.prop(self, 'property0') - - row = layout.row(align=True) - column = row.column(align=True) - op = column.operator('lnx.node_remove_input', text='Remove', icon='X', emboss=True) - op.node_index = str(id(self)) - if len(self.inputs) == self.min_inputs: - column.enabled = False - layout.prop(self, 'property2') - - def get_replacement_node(self, node_tree: bpy.types.NodeTree): - if self.lnx_version not in (0, 1): - raise LookupError() - - return NodeReplacement.Identity(self) - - - -def register(): - add_category('HTML', icon='SEQ_STRIP_META') - CreateStyleNode.on_register() +import array +from lnx.logicnode.lnx_nodes import * + + +class CreateStyleNode(LnxLogicTreeNode): + """Create Style""" + bl_idname = 'LNCreateStyleNode' + bl_label = 'Create Style' + bl_description = 'Create Style' + lnx_category = 'HTML' + lnx_version = 1 + min_inputs = 1 + + + + + @staticmethod + def get_enum_id_value(obj, prop_name, value): + return obj.bl_rna.properties[prop_name].enum_items[value].identifier + + @staticmethod + def get_count_in(type_name): + return { + 'align-content': 0, + 'align-items': 1, + 'align-self': 2, + 'animation-delay': 3, + 'animation-direction': 4, + 'animation-duration': 5, + 'animation-fill-mode': 6, + 'animation-iteration-count': 7, + 'animation-name': 8, + 'animation-play-state': 9, + 'animation-timing-function': 10, + 'backface-visibility': 11, + 'background': 12, + 'background-attachment': 13, + 'background-clip': 14, + 'background-color': 15, + 'background-image': 16, + 'background-origin': 17, + 'background-position': 18, + 'background-repeat': 19, + 'background-size': 20, + 'border': 21, + 'border-bottom': 22, + 'border-bottom-color': 23, + 'border-bottom-left-radius': 24, + 'border-bottom-right-radius': 25, + 'border-bottom-style': 26, + 'border-bottom-width': 27, + 'border-collapse': 28, + 'border-color': 29, + 'border-image': 30, + 'border-image-outset': 31, + 'border-image-repeat': 32, + 'border-image-slice': 33, + 'border-image-source': 34, + 'border-image-width': 35, + 'border-left': 36, + 'border-left-color': 37, + 'border-left-style': 38, + 'border-left-width': 39, + 'border-radius': 40, + 'border-right': 41, + 'border-right-color': 42, + 'border-right-style': 43, + 'border-right-width': 44, + 'border-spacing': 45, + 'border-style': 46, + 'border-top': 47, + 'border-top-color': 48, + 'border-top-left-radius': 49, + 'border-top-right-radius': 50, + 'border-top-style': 51, + 'border-top-width': 52, + 'border-width': 53, + 'bottom': 54, + 'box-shadow': 55, + 'box-sizing': 56, + 'caption-side': 57, + 'clear': 58, + 'clip': 59, + 'color': 60, + 'column-count': 61, + 'column-fill': 62, + 'column-gap': 63, + 'column-rule': 64, + 'column-rule-color': 65, + 'column-rule-style': 66, + 'column-rule-width': 67, + 'column-span': 68, + 'column-width': 69, + 'columns': 70, + 'content': 71, + 'counter-increment': 72, + 'counter-reset': 73, + 'cursor': 74, + 'direction': 75, + 'display': 76, + 'empty-cells': 77, + 'flex': 78, + 'flex-basis': 79, + 'flex-direction': 80, + 'flex-flow': 81, + 'flex-grow': 82, + 'flex-shrink': 83, + 'flex-wrap': 84, + 'float': 85, + 'font': 86, + 'font-family': 87, + 'font-size': 88, + 'font-size-adjust': 89, + 'font-stretch': 90, + 'font-style': 91, + 'font-variant': 92, + 'font-weight': 93, + 'height': 94, + 'justify-content': 95, + 'left': 96, + 'letter-spacing': 97, + 'line-height': 98, + 'list-style': 99, + 'list-style-image': 100, + 'list-style-position': 101, + 'list-style-type': 102, + 'margin': 103, + 'margin-bottom': 104, + 'margin-left': 105, + 'margin-right': 106, + 'margin-top': 107, + 'max-height': 108, + 'max-width': 109, + 'min-height': 110, + 'min-width': 111, + 'opacity': 112, + 'order': 113, + 'outline': 114, + 'outline-color': 115, + 'outline-offset': 116, + 'outline-style': 117, + 'outline-width': 118, + 'overflow': 119, + 'overflow-x': 120, + 'overflow-y': 121, + 'padding': 122, + 'padding-bottom': 123, + 'padding-left': 124, + 'padding-right': 125, + 'padding-top': 126, + 'page-break-after': 127, + 'page-break-before': 128, + 'page-break-inside': 129, + 'perspective': 130, + 'perspective-origin': 131, + 'position': 132, + 'quotes': 133, + 'resize': 134, + 'right': 135, + 'tab-size': 136, + 'table-layout': 137, + 'text-align': 138, + 'text-align-last': 139, + 'text-decoration': 140, + 'text-decoration-color': 141, + 'text-decoration-line': 142, + 'text-decoration-style': 143, + 'text-indent': 144, + 'text-justify': 145, + 'text-overflow': 146, + 'text-shadow': 147, + 'text-transform': 148, + 'top': 149, + 'transform': 150, + 'transform-origin': 151, + 'transform-style': 152, + 'transition': 153, + 'transition-delay': 154, + 'transition-duration': 155, + 'transition-property': 156, + 'transition-timing-function': 157, + 'vertical-align': 158, + 'visibility': 159, + 'white-space': 160, + 'width': 161, + 'word-break': 162, + 'word-spacing': 163, + 'word-wrap': 164, + 'z-index': 165 + }.get(type_name, 60) + + def get_enum(self): + ind = 0 + properties = '' + for i in self.inputs: + if ind != 0: + properties += self.inputs[ind].name + ':' + ind += 1 + + self['property1'] = properties + + return self.get('property0', 60) + + def set_enum(self, value): + select_current = self.get_enum_id_value(self, 'property0', value) + select_prev = self.property0 + + if select_prev != select_current: + self.add_input('LnxStringSocket', select_current) + + self['property0'] = value + + ind = 0 + properties = '' + for i in self.inputs: + if ind != 0: + properties += self.inputs[ind].name + ':' + ind += 1 + + self['property1'] = properties + + + property0: HaxeEnumProperty( + 'property0', + items = [('align-content', 'align-content', 'Align Content'), + ('align-items', 'align-items', 'Align Items'), + ('align-self', 'align-self', 'Align Self'), + ('animation-delay', 'animation-delay', 'Animation Delay'), + ('animation-direction', 'animation-direction', 'Animation Direction'), + ('animation-duration', 'animation-duration', 'Animation Duration'), + ('animation-fill-mode', 'animation-fill-mode', 'Animation Fill Mode'), + ('animation-iteration-count', 'animation-iteration-count', 'Animation Iteration Count'), + ('animation-name', 'animation-name', 'Animation Name'), + ('animation-play-state', 'animation-play-state', 'Animation Play State'), + ('animation-timing-function', 'animation-timing-function', 'Animation Timing Function'), + ('backface-visibility', 'backface-visibility', 'Backface Visibility'), + ('background', 'background', 'Background'), + ('background-attachment', 'background-attachment', 'Background Attachment'), + ('background-clip', 'background-clip', 'Background Clip'), + ('background-color', 'background-color', 'Background Color'), + ('background-image', 'background-image', 'Background Image'), + ('background-origin', 'background-origin', 'Background Origin'), + ('background-position', 'background-position', 'Background Position'), + ('background-repeat', 'background-repeat', 'Background Repeat'), + ('background-size', 'background-size', 'Background Size'), + ('border', 'border', 'Border'), + ('border-bottom', 'border-bottom', 'Border Bottom'), + ('border-bottom-color', 'border-bottom-color', 'Border Bottom Color'), + ('border-bottom-left-radius', 'border-bottom-left-radius', 'Border Bottom Left Radius'), + ('border-bottom-right-radius', 'border-bottom-right-radius', 'Border Bottom Right Radius'), + ('border-bottom-style', 'border-bottom-style', 'Border Bottom Style'), + ('border-bottom-width', 'border-bottom-width', 'Border Bottom Width'), + ('border-collapse', 'border-collapse', 'Border Collapse'), + ('border-color', 'border-color', 'Border Color'), + ('border-image', 'border-image', 'Border Image'), + ('border-image-outset', 'border-image-outset', 'Border Image Outset'), + ('border-image-repeat', 'border-image-repeat', 'Border Image Repeat'), + ('border-image-slice', 'border-image-slice', 'Border Image Slice'), + ('border-image-source', 'border-image-source', 'Border Image Source'), + ('border-image-width', 'border-image-width', 'Border Image Width'), + ('border-left', 'border-left', 'Border Left'), + ('border-left-color', 'border-left-color', 'Border Left Color'), + ('border-left-style', 'border-left-style', 'Border Left Style'), + ('border-left-width', 'border-left-width', 'Border Left Width'), + ('border-radius', 'border-radius', 'Border Radius'), + ('border-right', 'border-right', 'Border Right'), + ('border-right-color', 'border-right-color', 'Border Right Color'), + ('border-right-style', 'border-right-style', 'Border Right Style'), + ('border-right-width', 'border-right-width', 'Border Right Width'), + ('border-spacing', 'border-spacing', 'Border Spacing'), + ('border-style', 'border-style', 'Border Style'), + ('border-top', 'border-top', 'Border Top'), + ('border-top-color', 'border-top-color', 'Border Top Color'), + ('border-top-left-radius', 'border-top-left-radius', 'Border Top Left Radius'), + ('border-top-right-radius', 'border-top-right-radius', 'Border Top Right Radius'), + ('border-top-style', 'border-top-style', 'Border Top Style'), + ('border-top-width', 'border-top-width', 'Border Top Width'), + ('border-width', 'border-width', 'Border Width'), + ('bottom', 'bottom', 'Bottom'), + ('box-shadow', 'box-shadow', 'Box Shadow'), + ('box-sizing', 'box-sizing', 'Box Sizing'), + ('caption-side', 'caption-side', 'Caption Side'), + ('clear', 'clear', 'Clear'), + ('clip', 'clip', 'Clip'), + ('color', 'color', 'Color'), + ('column-count', 'column-count', 'Column Count'), + ('column-fill', 'column-fill', 'Column Fill'), + ('column-gap', 'column-gap', 'Column Gap'), + ('column-rule', 'column-rule', 'Column Rule'), + ('column-rule-color', 'column-rule-color', 'Column Rule Color'), + ('column-rule-style', 'column-rule-style', 'Column Rule Style'), + ('column-rule-width', 'column-rule-width', 'Column Rule Width'), + ('column-span', 'column-span', 'Column Span'), + ('column-width', 'column-width', 'Column Width'), + ('columns', 'columns', 'Columns'), + ('content', 'content', 'Content'), + ('counter-increment', 'counter-increment', 'Counter Increment'), + ('counter-reset', 'counter-reset', 'Counter Reset'), + ('cursor', 'cursor', 'Cursor'), + ('direction', 'direction', 'Direction'), + ('display', 'display', 'Display'), + ('empty-cells', 'empty-cells', 'Empty Cells'), + ('flex', 'flex', 'Flex'), + ('flex-basis', 'flex-basis', 'Flex Basis'), + ('flex-direction', 'flex-direction', 'Flex Direction'), + ('flex-flow', 'flex-flow', 'Flex Flow'), + ('flex-grow', 'flex-grow', 'Flex Grow'), + ('flex-shrink', 'flex-shrink', 'Flex Shrink'), + ('flex-wrap', 'flex-wrap', 'Flex Wrap'), + ('float', 'float', 'Float'), + ('font', 'font', 'Font'), + ('font-family', 'font-family', 'Font Family'), + ('font-size', 'font-size', 'Font Size'), + ('font-size-adjust', 'font-size-adjust', 'Font Size Adjust'), + ('font-stretch', 'font-stretch', 'Font Stretch'), + ('font-style', 'font-style', 'Font Style'), + ('font-variant', 'font-variant', 'Font Variant'), + ('font-weight', 'font-weight', 'Font Weight'), + ('height', 'height', 'Height'), + ('justify-content', 'justify-content', 'Justify Content'), + ('left', 'left', 'Left'), + ('letter-spacing', 'letter-spacing', 'Letter Spacing'), + ('line-height', 'line-height', 'Line Height'), + ('list-style', 'list-style', 'List Style'), + ('list-style-image', 'list-style-image', 'List Style Image'), + ('list-style-position', 'list-style-position', 'List Style Position'), + ('list-style-type', 'list-style-type', 'List Style Type'), + ('margin', 'margin', 'Margin'), + ('margin-bottom', 'margin-bottom', 'Margin Bottom'), + ('margin-left', 'margin-left', 'Margin Left'), + ('margin-right', 'margin-right', 'Margin Right'), + ('margin-top', 'margin-top', 'Margin Top'), + ('max-height', 'max-height', 'Max Height'), + ('max-width', 'max-width', 'Max Width'), + ('min-height', 'min-height', 'Min Height'), + ('min-width', 'min-width', 'Min Width'), + ('opacity', 'opacity', 'Opacity'), + ('order', 'order', 'Order'), + ('outline', 'outline', 'Outline'), + ('outline-color', 'outline-color', 'Outline Color'), + ('outline-offset', 'outline-offset', 'Outline Offset'), + ('outline-style', 'outline-style', 'Outline Style'), + ('outline-width', 'outline-width', 'Outline Sidth'), + ('overflow', 'overflow', 'Overflow'), + ('overflow-x', 'overflow-x', 'Overflow X'), + ('overflow-y', 'overflow-y', 'Overflow Y'), + ('padding', 'padding', 'Padding'), + ('padding-bottom', 'padding-bottom', 'Padding Bottom'), + ('padding-left', 'padding-left', 'Padding Left'), + ('padding-right', 'padding-right', 'Padding Right'), + ('padding-top', 'padding-top', 'Padding Top'), + ('page-break-after', 'page-break-after', 'Page Break After'), + ('page-break-before', 'page-break-before', 'Page Break Before'), + ('page-break-inside', 'page-break-inside', 'Page Break Inside'), + ('perspective', 'perspective', 'Perspective'), + ('perspective-origin', 'perspective-origin', 'Perspective Origin'), + ('position', 'position', 'Position'), + ('quotes', 'quotes', 'Quotes'), + ('resize', 'resize', 'Resize'), + ('right', 'right', 'Right'), + ('tab-size', 'tab-size', 'Tab Size'), + ('table-layout', 'table-layout', 'Table Layout'), + ('text-align', 'text-align', 'Text Align'), + ('text-align-last', 'text-align-last', 'Text Align Last'), + ('text-decoration', 'text-decoration', 'Text Decoration'), + ('text-decoration-color', 'text-decoration-color', 'Text Decoration Color'), + ('text-decoration-line', 'text-decoration-line', 'Text Decoration Line'), + ('text-decoration-style', 'text-decoration-style', 'Text Decoration Style'), + ('text-indent', 'text-indent', 'Text Indent'), + ('text-justify', 'text-justify', 'Text Justify'), + ('text-overflow', 'text-overflow', 'Text Overflow'), + ('text-shadow', 'text-shadow', 'Text Shadow'), + ('text-transform', 'text-transform', 'Text Transform'), + ('top', 'top', 'Top'), + ('transform', 'transform', 'Transform'), + ('transform-origin', 'transform-origin', 'Transform Origin'), + ('transform-style', 'transform-style', 'Transform Style'), + ('transition', 'transition', 'Transition'), + ('transition-delay', 'transition-delay', 'Transition Delay'), + ('transition-duration', 'transition-duration', 'Transition Duration'), + ('transition-property', 'transition-property', 'Transition Property'), + ('transition-timing-function', 'transition-timing-function', 'Transition Timing Function'), + ('vertical-align', 'vertical-align', 'Vertical Align'), + ('visibility', 'visibility', 'Visibility'), + ('white-space', 'white-space', 'White Space'), + ('width', 'width', 'Width'), + ('word-break', 'word-break', 'Word Break'), + ('word-spacing', 'word-spacing', 'Word Spacing'), + ('word-wrap', 'word-wrap', 'Word Wrap'), + ('z-index', 'z-index', 'Z Index')], + name='', + default='color', + #update=set_properties, + set=set_enum, + get=get_enum) + + property1: HaxeStringProperty( + 'property1', + name='', + default='') + + property2: HaxeBoolProperty( + 'property2', + name='Append CSS', + default=False) + + + + def __init__(self, *args, **kwargs): + super(CreateStyleNode, self).__init__(*args, **kwargs) + array_nodes[str(id(self))] = self + + def lnx_init(self, context): + self.add_input('LnxStringSocket', 'Class Name') + + self.add_output('LnxStringSocket', 'Class') + self.add_output('LnxStringSocket', 'Inline Style') + self.add_output('LnxStringSocket', 'CSS') + ind = 0 + properties = '' + + for i in self.inputs: + if ind != 0: + properties += self.inputs[ind].name + ':' + ind += 1 + self['property1'] = properties + + + + def draw_buttons(self, context, layout): + layout.prop(self, 'property0') + + row = layout.row(align=True) + column = row.column(align=True) + op = column.operator('lnx.node_remove_input', text='Remove', icon='X', emboss=True) + op.node_index = str(id(self)) + if len(self.inputs) == self.min_inputs: + column.enabled = False + layout.prop(self, 'property2') + + def get_replacement_node(self, node_tree: bpy.types.NodeTree): + if self.lnx_version not in (0, 1): + raise LookupError() + + return NodeReplacement.Identity(self) + + + +def register(): + add_category('HTML', icon='SEQ_STRIP_META') + CreateStyleNode.on_register() From cb93ede7d746bcae40ad2b3c4a781604b960a7f2 Mon Sep 17 00:00:00 2001 From: Onek8 Date: Thu, 3 Apr 2025 09:37:04 +0000 Subject: [PATCH 16/31] Update leenkx/blender/lnx/logicnode/custom/LN_create_torrent.py --- leenkx/blender/lnx/logicnode/custom/LN_create_torrent.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/leenkx/blender/lnx/logicnode/custom/LN_create_torrent.py b/leenkx/blender/lnx/logicnode/custom/LN_create_torrent.py index ede853d..28c31a5 100644 --- a/leenkx/blender/lnx/logicnode/custom/LN_create_torrent.py +++ b/leenkx/blender/lnx/logicnode/custom/LN_create_torrent.py @@ -9,7 +9,8 @@ class CreateTorrentNode(LnxLogicTreeNode): lnx_category = 'Leenkx' lnx_version = 1 - def __init__(self): + def __init__(self, *args, **kwargs): + super(CreateTorrentNode, self).__init__(*args, **kwargs) array_nodes[str(id(self))] = self From fa65c02e8ae647b6d96c8b2a950db1c19487897b Mon Sep 17 00:00:00 2001 From: Onek8 Date: Thu, 3 Apr 2025 09:37:54 +0000 Subject: [PATCH 17/31] Update leenkx/blender/lnx/logicnode/custom/LN_leenkx_event.py --- .../lnx/logicnode/custom/LN_leenkx_event.py | 219 +++++++++--------- 1 file changed, 110 insertions(+), 109 deletions(-) diff --git a/leenkx/blender/lnx/logicnode/custom/LN_leenkx_event.py b/leenkx/blender/lnx/logicnode/custom/LN_leenkx_event.py index 26d2bc2..3a4e432 100644 --- a/leenkx/blender/lnx/logicnode/custom/LN_leenkx_event.py +++ b/leenkx/blender/lnx/logicnode/custom/LN_leenkx_event.py @@ -1,110 +1,111 @@ -from lnx.logicnode.lnx_nodes import * - - -class LeenkxEventNode(LnxLogicTreeNode): - """Leenkx Event""" - bl_idname = 'LNLeenkxEventNode' - bl_label = 'Leenkx Event' - bl_description = 'Trigger an event from the network passing both data and ID' - lnx_category = 'Leenkx' - lnx_version = 1 - - @staticmethod - def get_enum_id_value(obj, prop_name, value): - return obj.bl_rna.properties[prop_name].enum_items[value].identifier - - @staticmethod - def get_count_in(type_name): - return { - 'client': 0, - 'host': 1, - 'securehost': 2 - }.get(type_name, 0) - - def get_enum(self): - return self.get('property0', 0) - - def set_enum(self, value): - # Checking the selection of each type - select_current = self.get_enum_id_value(self, 'property0', value) - select_prev = self.property0 - - #Check if type changed - if select_prev != select_current: - - for i in self.inputs: - self.inputs.remove(i) - - # Arguements for type Client - if (self.get_count_in(select_current) == 0): - self.add_input('LnxStringSocket', 'Url', default_value="8001") - - - # Arguements for type Host - if (self.get_count_in(select_current) == 1): - self.add_input('LnxStringSocket', 'Domain', default_value="127.0.0.1") - self.add_input('LnxIntSocket', 'Port', default_value=8001) - - - # Arguements for type Secure Host - if (self.get_count_in(select_current) == 2): - self.add_input('LnxStringSocket', 'Domain', default_value="127.0.0.1") - self.add_input('LnxIntSocket', 'Port', default_value=8001) - - - self['property0'] = value - - - property0: HaxeEnumProperty( - 'property0', - items = [('client', 'Client', 'Network client Event listener'), - ('host', 'Host', 'Network host Event listener'), - ('securehost', 'Secure Host', 'Network secure host Event listener')], - name='', - default='client', - set=set_enum, - get=get_enum) - - - property1: HaxeEnumProperty( - 'property1', - items = [('onopen', 'OnOpen', 'Listens to onOpen event'), - ('onmessage', 'OnMessage', 'Listens to onMessage event'), - ('onerror', 'OnError', 'Listens to onError event'), - ('onclose', 'OnClose', 'Listens to onClose event'), - ('onseen', 'OnSeen', 'Listens to onClose event'), - ('onserver', 'OnServer', 'Listens to onClose event'), - ('onconnections', 'OnConnections', 'Listens to onClose event'), - ('onping', 'OnPing', 'Listens to onClose event'), - ('onleft', 'OnLeft', 'Listens to onClose event'), - ('ontimeout', 'OnTimeout', 'Listens to onClose event'), - ('onrpc', 'OnRpc', 'Listens to onClose event'), - ('onrpcresponse', 'OnRpcResponse', 'Listens to onClose event'), - ('onwireleft', 'OnWireLeft', 'Listens to onClose event'), - ('onwireseen', 'OnWireSeen', 'Listens to onClose event'), - ('ontorrent', 'OnTorrent', 'Listens to onClose event'), - ('ontracker', 'OnTracker', 'Listens to onClose event'), - ('onannounce', 'OnAnnounce', 'Listens to onClose event')], - name='', - default='onopen') - - def __init__(self): - array_nodes[str(id(self))] = self - - - def lnx_init(self, context): - #self.add_input('LnxNodeSocketAction', 'In') - self.add_input('LnxStringSocket', 'Url', default_value="ws://127.0.0.1:8001") - - self.add_output('LnxNodeSocketAction', 'Out') - self.add_output('LnxDynamicSocket', 'ID') - self.add_output('LnxDynamicSocket', 'Data') - - - def draw_buttons(self, context, layout): - layout.prop(self, 'property0') - layout.prop(self, 'property1') - -def register(): - add_category('Leenkx', icon='ORIENTATION_CURSOR') +from lnx.logicnode.lnx_nodes import * + + +class LeenkxEventNode(LnxLogicTreeNode): + """Leenkx Event""" + bl_idname = 'LNLeenkxEventNode' + bl_label = 'Leenkx Event' + bl_description = 'Trigger an event from the network passing both data and ID' + lnx_category = 'Leenkx' + lnx_version = 1 + + @staticmethod + def get_enum_id_value(obj, prop_name, value): + return obj.bl_rna.properties[prop_name].enum_items[value].identifier + + @staticmethod + def get_count_in(type_name): + return { + 'client': 0, + 'host': 1, + 'securehost': 2 + }.get(type_name, 0) + + def get_enum(self): + return self.get('property0', 0) + + def set_enum(self, value): + # Checking the selection of each type + select_current = self.get_enum_id_value(self, 'property0', value) + select_prev = self.property0 + + #Check if type changed + if select_prev != select_current: + + for i in self.inputs: + self.inputs.remove(i) + + # Arguements for type Client + if (self.get_count_in(select_current) == 0): + self.add_input('LnxStringSocket', 'Url', default_value="8001") + + + # Arguements for type Host + if (self.get_count_in(select_current) == 1): + self.add_input('LnxStringSocket', 'Domain', default_value="127.0.0.1") + self.add_input('LnxIntSocket', 'Port', default_value=8001) + + + # Arguements for type Secure Host + if (self.get_count_in(select_current) == 2): + self.add_input('LnxStringSocket', 'Domain', default_value="127.0.0.1") + self.add_input('LnxIntSocket', 'Port', default_value=8001) + + + self['property0'] = value + + + property0: HaxeEnumProperty( + 'property0', + items = [('client', 'Client', 'Network client Event listener'), + ('host', 'Host', 'Network host Event listener'), + ('securehost', 'Secure Host', 'Network secure host Event listener')], + name='', + default='client', + set=set_enum, + get=get_enum) + + + property1: HaxeEnumProperty( + 'property1', + items = [('onopen', 'OnOpen', 'Listens to onOpen event'), + ('onmessage', 'OnMessage', 'Listens to onMessage event'), + ('onerror', 'OnError', 'Listens to onError event'), + ('onclose', 'OnClose', 'Listens to onClose event'), + ('onseen', 'OnSeen', 'Listens to onClose event'), + ('onserver', 'OnServer', 'Listens to onClose event'), + ('onconnections', 'OnConnections', 'Listens to onClose event'), + ('onping', 'OnPing', 'Listens to onClose event'), + ('onleft', 'OnLeft', 'Listens to onClose event'), + ('ontimeout', 'OnTimeout', 'Listens to onClose event'), + ('onrpc', 'OnRpc', 'Listens to onClose event'), + ('onrpcresponse', 'OnRpcResponse', 'Listens to onClose event'), + ('onwireleft', 'OnWireLeft', 'Listens to onClose event'), + ('onwireseen', 'OnWireSeen', 'Listens to onClose event'), + ('ontorrent', 'OnTorrent', 'Listens to onClose event'), + ('ontracker', 'OnTracker', 'Listens to onClose event'), + ('onannounce', 'OnAnnounce', 'Listens to onClose event')], + name='', + default='onopen') + + def __init__(self, *args, **kwargs): + super(LeenkxEventNode, self).__init__(*args, **kwargs) + array_nodes[str(id(self))] = self + + + def lnx_init(self, context): + #self.add_input('LnxNodeSocketAction', 'In') + self.add_input('LnxStringSocket', 'Url', default_value="ws://127.0.0.1:8001") + + self.add_output('LnxNodeSocketAction', 'Out') + self.add_output('LnxDynamicSocket', 'ID') + self.add_output('LnxDynamicSocket', 'Data') + + + def draw_buttons(self, context, layout): + layout.prop(self, 'property0') + layout.prop(self, 'property1') + +def register(): + add_category('Leenkx', icon='ORIENTATION_CURSOR') LeenkxEventNode.on_register() \ No newline at end of file From 78109cfee23043c4448ac32d3388f13d8075c342 Mon Sep 17 00:00:00 2001 From: Onek8 Date: Thu, 3 Apr 2025 09:41:20 +0000 Subject: [PATCH 18/31] Update leenkx/blender/lnx/logicnode/custom/LN_leenkx_send_message.py --- .../custom/LN_leenkx_send_message.py | 231 +++++++++--------- 1 file changed, 116 insertions(+), 115 deletions(-) diff --git a/leenkx/blender/lnx/logicnode/custom/LN_leenkx_send_message.py b/leenkx/blender/lnx/logicnode/custom/LN_leenkx_send_message.py index 263a50f..9bce429 100644 --- a/leenkx/blender/lnx/logicnode/custom/LN_leenkx_send_message.py +++ b/leenkx/blender/lnx/logicnode/custom/LN_leenkx_send_message.py @@ -1,116 +1,117 @@ -from lnx.logicnode.lnx_nodes import * - - -class LeenkxSendMessageNode(LnxLogicTreeNode): - """Leenkx Send Message""" - bl_idname = 'LNLeenkxSendMessageNode' - bl_label = 'Leenkx Send Message' - bl_description = 'Send messages to the Leenkx network' - lnx_category = 'Leenkx' - lnx_version = 1 - - @staticmethod - def get_enum_id_value(obj, prop_name, value): - return obj.bl_rna.properties[prop_name].enum_items[value].identifier - - @staticmethod - def get_count_in(type_name): - return { - 'client': 0, - 'host': 1, - 'securehost': 2 - }.get(type_name, 0) - - def get_enum(self): - return self.get('property0', 0) - - def set_enum(self, value): - # Checking the selection of each type - select_current = self.get_enum_id_value(self, 'property0', value) - select_prev = self.property0 - - #Check if type changed - if select_prev != select_current: - - for i in self.inputs: - self.inputs.remove(i) - - # Arguements for type Client - if (self.get_count_in(select_current) == 0): - self.add_input('LnxNodeSocketAction', 'In') - self.add_input('LnxDynamicSocket', 'Connection') - self.add_input('LnxStringSocket', 'API') - self.add_input('LnxDynamicSocket', 'Data') - self.add_input('LnxStringSocket', 'ID') - self.add_input('LnxBoolSocket', 'Send All') - - # Arguements for type Host - if (self.get_count_in(select_current) == 1): - self.add_input('LnxNodeSocketAction', 'In') - self.add_input('LnxDynamicSocket', 'Connection') - self.add_input('LnxStringSocket', 'API') - self.add_input('LnxDynamicSocket', 'Data') - self.add_input('LnxStringSocket', 'ID') - self.add_input('LnxBoolSocket', 'Send All') - - - # Arguements for type Secure Host - if (self.get_count_in(select_current) == 2): - self.add_input('LnxNodeSocketAction', 'In') - self.add_input('LnxDynamicSocket', 'Connection') - self.add_input('LnxStringSocket', 'API') - self.add_input('LnxDynamicSocket', 'Data') - self.add_input('LnxStringSocket', 'ID') - self.add_input('LnxBoolSocket', 'Send All') - - - self['property0'] = value - - - property0: HaxeEnumProperty( - 'property0', - items = [('client', 'Client', 'Network client Event listener'), - ('host', 'Host', 'Network host Event listener'), - ('securehost', 'Secure Host', 'Network secure host Event listener')], - name='', - default='client', - set=set_enum, - get=get_enum) - - - property1: HaxeEnumProperty( - 'property1', - items = [('string', 'String', 'Send a string over the network to one or all of the clients'), - ('vector', 'Vector', 'Send a vector over the network to one or all of the clients'), - ('float', 'Float', 'Send a float over the network to one or all of the clients'), - ('integer', 'Integer', 'Send an integer over the network to one or all of the clients'), - ('boolean', 'Boolean', 'Send a boolean over the network to one or all of the clients'), - ('transform', 'Transform', 'Send a transform over the network to one or all of the clients'), - ('rotation', 'Rotation', 'Send a rotation over the network to one or all of the clients')], - name='', - default='string') - - - def __init__(self): - array_nodes[str(id(self))] = self - - - def lnx_init(self, context): - self.add_input('LnxNodeSocketAction', 'In') - self.add_input('LnxDynamicSocket', 'Connection') - self.add_input('LnxStringSocket', 'API') - self.add_input('LnxDynamicSocket', 'Data') - self.add_input('LnxStringSocket', 'ID') - self.add_input('LnxBoolSocket', 'Send All') - - self.add_output('LnxNodeSocketAction', 'Out') - - - - def draw_buttons(self, context, layout): - layout.prop(self, 'property0') - layout.prop(self, 'property1') - -def register(): - add_category('Leenkx', icon='ORIENTATION_CURSOR') +from lnx.logicnode.lnx_nodes import * + + +class LeenkxSendMessageNode(LnxLogicTreeNode): + """Leenkx Send Message""" + bl_idname = 'LNLeenkxSendMessageNode' + bl_label = 'Leenkx Send Message' + bl_description = 'Send messages to the Leenkx network' + lnx_category = 'Leenkx' + lnx_version = 1 + + @staticmethod + def get_enum_id_value(obj, prop_name, value): + return obj.bl_rna.properties[prop_name].enum_items[value].identifier + + @staticmethod + def get_count_in(type_name): + return { + 'client': 0, + 'host': 1, + 'securehost': 2 + }.get(type_name, 0) + + def get_enum(self): + return self.get('property0', 0) + + def set_enum(self, value): + # Checking the selection of each type + select_current = self.get_enum_id_value(self, 'property0', value) + select_prev = self.property0 + + #Check if type changed + if select_prev != select_current: + + for i in self.inputs: + self.inputs.remove(i) + + # Arguements for type Client + if (self.get_count_in(select_current) == 0): + self.add_input('LnxNodeSocketAction', 'In') + self.add_input('LnxDynamicSocket', 'Connection') + self.add_input('LnxStringSocket', 'API') + self.add_input('LnxDynamicSocket', 'Data') + self.add_input('LnxStringSocket', 'ID') + self.add_input('LnxBoolSocket', 'Send All') + + # Arguements for type Host + if (self.get_count_in(select_current) == 1): + self.add_input('LnxNodeSocketAction', 'In') + self.add_input('LnxDynamicSocket', 'Connection') + self.add_input('LnxStringSocket', 'API') + self.add_input('LnxDynamicSocket', 'Data') + self.add_input('LnxStringSocket', 'ID') + self.add_input('LnxBoolSocket', 'Send All') + + + # Arguements for type Secure Host + if (self.get_count_in(select_current) == 2): + self.add_input('LnxNodeSocketAction', 'In') + self.add_input('LnxDynamicSocket', 'Connection') + self.add_input('LnxStringSocket', 'API') + self.add_input('LnxDynamicSocket', 'Data') + self.add_input('LnxStringSocket', 'ID') + self.add_input('LnxBoolSocket', 'Send All') + + + self['property0'] = value + + + property0: HaxeEnumProperty( + 'property0', + items = [('client', 'Client', 'Network client Event listener'), + ('host', 'Host', 'Network host Event listener'), + ('securehost', 'Secure Host', 'Network secure host Event listener')], + name='', + default='client', + set=set_enum, + get=get_enum) + + + property1: HaxeEnumProperty( + 'property1', + items = [('string', 'String', 'Send a string over the network to one or all of the clients'), + ('vector', 'Vector', 'Send a vector over the network to one or all of the clients'), + ('float', 'Float', 'Send a float over the network to one or all of the clients'), + ('integer', 'Integer', 'Send an integer over the network to one or all of the clients'), + ('boolean', 'Boolean', 'Send a boolean over the network to one or all of the clients'), + ('transform', 'Transform', 'Send a transform over the network to one or all of the clients'), + ('rotation', 'Rotation', 'Send a rotation over the network to one or all of the clients')], + name='', + default='string') + + + def __init__(self, *args, **kwargs): + super(LeenkxSendMessageNode, self).__init__(*args, **kwargs) + array_nodes[str(id(self))] = self + + + def lnx_init(self, context): + self.add_input('LnxNodeSocketAction', 'In') + self.add_input('LnxDynamicSocket', 'Connection') + self.add_input('LnxStringSocket', 'API') + self.add_input('LnxDynamicSocket', 'Data') + self.add_input('LnxStringSocket', 'ID') + self.add_input('LnxBoolSocket', 'Send All') + + self.add_output('LnxNodeSocketAction', 'Out') + + + + def draw_buttons(self, context, layout): + layout.prop(self, 'property0') + layout.prop(self, 'property1') + +def register(): + add_category('Leenkx', icon='ORIENTATION_CURSOR') LeenkxSendMessageNode.on_register() \ No newline at end of file From fb00ca88ff737f365f1e711ea1bd125d86334c74 Mon Sep 17 00:00:00 2001 From: Onek8 Date: Thu, 3 Apr 2025 09:42:15 +0000 Subject: [PATCH 19/31] Update leenkx/blender/lnx/logicnode/custom/LN_seed_torrent.py --- leenkx/blender/lnx/logicnode/custom/LN_seed_torrent.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/leenkx/blender/lnx/logicnode/custom/LN_seed_torrent.py b/leenkx/blender/lnx/logicnode/custom/LN_seed_torrent.py index 93d60dc..5a6e18a 100644 --- a/leenkx/blender/lnx/logicnode/custom/LN_seed_torrent.py +++ b/leenkx/blender/lnx/logicnode/custom/LN_seed_torrent.py @@ -9,7 +9,8 @@ class SeedTorrentNode(LnxLogicTreeNode): lnx_category = 'Leenkx' lnx_version = 1 - def __init__(self): + def __init__(self, *args, **kwargs): + super(SeedTorrentNode, self).__init__(*args, **kwargs) array_nodes[str(id(self))] = self From 3185f61f3925a5748b038e54df86a9ae4ae7d9a9 Mon Sep 17 00:00:00 2001 From: Onek8 Date: Thu, 3 Apr 2025 09:43:13 +0000 Subject: [PATCH 20/31] Update leenkx/blender/lnx/logicnode/custom/LN_set_element_data.py --- leenkx/blender/lnx/logicnode/custom/LN_set_element_data.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/leenkx/blender/lnx/logicnode/custom/LN_set_element_data.py b/leenkx/blender/lnx/logicnode/custom/LN_set_element_data.py index fef9718..63fa967 100644 --- a/leenkx/blender/lnx/logicnode/custom/LN_set_element_data.py +++ b/leenkx/blender/lnx/logicnode/custom/LN_set_element_data.py @@ -57,7 +57,8 @@ class SetElementDataNode(LnxLogicTreeNode): get=get_enum) - def __init__(self): + def __init__(self, *args, **kwargs): + super(SetElementDataNode, self).__init__(*args, **kwargs) array_nodes[str(id(self))] = self From bfb11275dfcc9c8497f48bcc504baa7ffc20c8af Mon Sep 17 00:00:00 2001 From: Onek8 Date: Thu, 3 Apr 2025 09:43:48 +0000 Subject: [PATCH 21/31] Update leenkx/blender/lnx/logicnode/custom/LN_touch_pad.py --- leenkx/blender/lnx/logicnode/custom/LN_touch_pad.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/leenkx/blender/lnx/logicnode/custom/LN_touch_pad.py b/leenkx/blender/lnx/logicnode/custom/LN_touch_pad.py index aa7963d..c3a7064 100644 --- a/leenkx/blender/lnx/logicnode/custom/LN_touch_pad.py +++ b/leenkx/blender/lnx/logicnode/custom/LN_touch_pad.py @@ -9,7 +9,8 @@ class TouchPadNode(LnxLogicTreeNode): lnx_category = 'Leenkx' lnx_version = 1 - def __init__(self): + def __init__(self, *args, **kwargs): + super(TouchPadNode, self).__init__(*args, **kwargs) array_nodes[str(id(self))] = self From c90bde871911fe50adfdf327fdcd1175990245de Mon Sep 17 00:00:00 2001 From: Onek8 Date: Thu, 3 Apr 2025 09:44:34 +0000 Subject: [PATCH 22/31] Update leenkx/blender/lnx/logicnode/draw/LN_draw_camera.py --- leenkx/blender/lnx/logicnode/draw/LN_draw_camera.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/leenkx/blender/lnx/logicnode/draw/LN_draw_camera.py b/leenkx/blender/lnx/logicnode/draw/LN_draw_camera.py index 049b67f..10375dd 100644 --- a/leenkx/blender/lnx/logicnode/draw/LN_draw_camera.py +++ b/leenkx/blender/lnx/logicnode/draw/LN_draw_camera.py @@ -21,8 +21,8 @@ class DrawCameraNode(LnxLogicTreeNode): num_choices: IntProperty(default=0, min=0) - def __init__(self): - super(DrawCameraNode, self).__init__() + def __init__(self, *args, **kwargs): + super(DrawCameraNode, self).__init__(*args, **kwargs) array_nodes[str(id(self))] = self def lnx_init(self, context): From 176408174075b69cc37e20745ddfc1d4914c53cb Mon Sep 17 00:00:00 2001 From: Onek8 Date: Thu, 3 Apr 2025 09:45:19 +0000 Subject: [PATCH 23/31] Update leenkx/blender/lnx/logicnode/draw/LN_draw_polygon.py --- leenkx/blender/lnx/logicnode/draw/LN_draw_polygon.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/leenkx/blender/lnx/logicnode/draw/LN_draw_polygon.py b/leenkx/blender/lnx/logicnode/draw/LN_draw_polygon.py index ac165c1..e803142 100644 --- a/leenkx/blender/lnx/logicnode/draw/LN_draw_polygon.py +++ b/leenkx/blender/lnx/logicnode/draw/LN_draw_polygon.py @@ -26,8 +26,8 @@ class DrawPolygonNode(LnxLogicTreeNode): num_choices: IntProperty(default=1, min=0) - def __init__(self): - super(DrawPolygonNode, self).__init__() + def __init__(self, *args, **kwargs): + super(DrawPolygonNode, self).__init__(*args, **kwargs) array_nodes[str(id(self))] = self def lnx_init(self, context): From 8c758bf51f64c46b9fe2aeb09c3c1590101ac60f Mon Sep 17 00:00:00 2001 From: Onek8 Date: Thu, 3 Apr 2025 09:46:41 +0000 Subject: [PATCH 24/31] Update leenkx/blender/lnx/logicnode/input/LN_on_swipe.py --- leenkx/blender/lnx/logicnode/input/LN_on_swipe.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/leenkx/blender/lnx/logicnode/input/LN_on_swipe.py b/leenkx/blender/lnx/logicnode/input/LN_on_swipe.py index d712ef1..f87e98d 100644 --- a/leenkx/blender/lnx/logicnode/input/LN_on_swipe.py +++ b/leenkx/blender/lnx/logicnode/input/LN_on_swipe.py @@ -55,8 +55,8 @@ class OnSwipeNode(LnxLogicTreeNode): min_outputs = 4 max_outputs = 12 - def __init__(self): - super(OnSwipeNode, self).__init__() + def __init__(self, *args, **kwargs): + super(OnSwipeNode, self).__init__(*args, **kwargs) array_nodes[str(id(self))] = self def lnx_init(self, context): From 2b16b565a8cef8b9748331a3ae4c9979f140b4eb Mon Sep 17 00:00:00 2001 From: Onek8 Date: Thu, 3 Apr 2025 09:57:33 +0000 Subject: [PATCH 25/31] Update leenkx/blender/lnx/logicnode/logic/LN_alternate_output.py --- leenkx/blender/lnx/logicnode/logic/LN_alternate_output.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/leenkx/blender/lnx/logicnode/logic/LN_alternate_output.py b/leenkx/blender/lnx/logicnode/logic/LN_alternate_output.py index 0ce4c06..d0a53a8 100644 --- a/leenkx/blender/lnx/logicnode/logic/LN_alternate_output.py +++ b/leenkx/blender/lnx/logicnode/logic/LN_alternate_output.py @@ -7,8 +7,8 @@ class AlternateNode(LnxLogicTreeNode): lnx_section = 'flow' lnx_version = 2 - def __init__(self): - super(AlternateNode, self).__init__() + def __init__(self, *args, **kwargs): + super(AlternateNode, self).__init__(*args, **kwargs) array_nodes[str(id(self))] = self def lnx_init(self, context): From db1c3bdf4c4f3be71c550d78f534968634cdf367 Mon Sep 17 00:00:00 2001 From: Onek8 Date: Thu, 3 Apr 2025 09:59:20 +0000 Subject: [PATCH 26/31] Update leenkx/blender/lnx/logicnode/logic/LN_call_function.py --- leenkx/blender/lnx/logicnode/logic/LN_call_function.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/leenkx/blender/lnx/logicnode/logic/LN_call_function.py b/leenkx/blender/lnx/logicnode/logic/LN_call_function.py index addd189..4f49ca6 100644 --- a/leenkx/blender/lnx/logicnode/logic/LN_call_function.py +++ b/leenkx/blender/lnx/logicnode/logic/LN_call_function.py @@ -10,8 +10,8 @@ class CallFunctionNode(LnxLogicTreeNode): lnx_version = 2 min_inputs = 3 - def __init__(self): - super(CallFunctionNode, self).__init__() + def __init__(self, *args, **kwargs): + super(CallFunctionNode, self).__init__(*args, **kwargs) array_nodes[str(id(self))] = self def lnx_init(self, context): From eb033149a0a18c9849396b6e38dbbb7a4434789b Mon Sep 17 00:00:00 2001 From: Onek8 Date: Thu, 3 Apr 2025 10:01:30 +0000 Subject: [PATCH 27/31] Update leenkx/blender/lnx/logicnode/logic/LN_case_index.py --- leenkx/blender/lnx/logicnode/logic/LN_case_index.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/leenkx/blender/lnx/logicnode/logic/LN_case_index.py b/leenkx/blender/lnx/logicnode/logic/LN_case_index.py index 7696038..ea4e233 100644 --- a/leenkx/blender/lnx/logicnode/logic/LN_case_index.py +++ b/leenkx/blender/lnx/logicnode/logic/LN_case_index.py @@ -21,8 +21,8 @@ class CaseIndexNode(LnxLogicTreeNode): num_choices: IntProperty(default=0, min=0) - def __init__(self): - super().__init__() + def __init__(self, *args, **kwargs): + super(CaseIndexNode, self).__init__(*args, **kwargs) array_nodes[str(id(self))] = self def lnx_init(self, context): From 48d28f68736e62886c7ebd7c8a950d2aaffa1a7a Mon Sep 17 00:00:00 2001 From: Onek8 Date: Thu, 3 Apr 2025 10:02:33 +0000 Subject: [PATCH 28/31] Update leenkx/blender/lnx/logicnode/logic/LN_function.py --- leenkx/blender/lnx/logicnode/logic/LN_function.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/leenkx/blender/lnx/logicnode/logic/LN_function.py b/leenkx/blender/lnx/logicnode/logic/LN_function.py index 7752fda..9d80db1 100644 --- a/leenkx/blender/lnx/logicnode/logic/LN_function.py +++ b/leenkx/blender/lnx/logicnode/logic/LN_function.py @@ -11,8 +11,8 @@ class FunctionNode(LnxLogicTreeNode): lnx_version = 2 min_outputs = 1 - def __init__(self): - super(FunctionNode, self).__init__() + def __init__(self, *args, **kwargs): + super(FunctionNode, self).__init__(*args, **kwargs) array_nodes[str(id(self))] = self def lnx_init(self, context): From 38595db46b8a6063ae4a250d6e3e94721c4a5035 Mon Sep 17 00:00:00 2001 From: Onek8 Date: Thu, 3 Apr 2025 10:03:25 +0000 Subject: [PATCH 29/31] Update leenkx/blender/lnx/logicnode/logic/LN_gate.py --- leenkx/blender/lnx/logicnode/logic/LN_gate.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/leenkx/blender/lnx/logicnode/logic/LN_gate.py b/leenkx/blender/lnx/logicnode/logic/LN_gate.py index 1537a95..e2858d3 100644 --- a/leenkx/blender/lnx/logicnode/logic/LN_gate.py +++ b/leenkx/blender/lnx/logicnode/logic/LN_gate.py @@ -38,8 +38,8 @@ class GateNode(LnxLogicTreeNode): update=remove_extra_inputs) property1: HaxeFloatProperty('property1', name='Tolerance', description='Precision for float compare', default=0.0001) - def __init__(self): - super(GateNode, self).__init__() + def __init__(self, *args, **kwargs): + super(GateNode, self).__init__(*args, **kwargs) array_nodes[str(id(self))] = self def lnx_init(self, context): From be63323c09ad5123fea62041e7a1830f10369525 Mon Sep 17 00:00:00 2001 From: Onek8 Date: Thu, 3 Apr 2025 10:04:15 +0000 Subject: [PATCH 30/31] Update leenkx/blender/lnx/logicnode/logic/LN_merge.py --- leenkx/blender/lnx/logicnode/logic/LN_merge.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/leenkx/blender/lnx/logicnode/logic/LN_merge.py b/leenkx/blender/lnx/logicnode/logic/LN_merge.py index 1025fb6..9b8bc3e 100644 --- a/leenkx/blender/lnx/logicnode/logic/LN_merge.py +++ b/leenkx/blender/lnx/logicnode/logic/LN_merge.py @@ -41,8 +41,8 @@ class MergeNode(LnxLogicTreeNode): update=update_exec_mode, ) - def __init__(self): - super(MergeNode, self).__init__() + def __init__(self, *args, **kwargs): + super(MergeNode, self).__init__(*args, **kwargs) array_nodes[str(id(self))] = self def lnx_init(self, context): From a627a52d46b81694447f8bdfa555ef46a88f115b Mon Sep 17 00:00:00 2001 From: Onek8 Date: Thu, 3 Apr 2025 10:04:43 +0000 Subject: [PATCH 31/31] Update leenkx/blender/lnx/logicnode/logic/LN_output_sequence.py --- leenkx/blender/lnx/logicnode/logic/LN_output_sequence.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/leenkx/blender/lnx/logicnode/logic/LN_output_sequence.py b/leenkx/blender/lnx/logicnode/logic/LN_output_sequence.py index 9a6a1ae..c43b79b 100644 --- a/leenkx/blender/lnx/logicnode/logic/LN_output_sequence.py +++ b/leenkx/blender/lnx/logicnode/logic/LN_output_sequence.py @@ -8,8 +8,8 @@ class SequenceNode(LnxLogicTreeNode): lnx_version = 2 min_outputs = 0 - def __init__(self): - super(SequenceNode, self).__init__() + def __init__(self, *args, **kwargs): + super(SequenceNode, self).__init__(*args, **kwargs) array_nodes[self.get_id_str()] = self def lnx_init(self, context):