from lnx.logicnode.lnx_nodes import *

class GetChildNode(LnxLogicTreeNode):
    """Returns the child of the given object by the child object's name."""
    bl_idname = 'LNGetChildNode'
    bl_label = 'Get Object Child'
    lnx_section = 'relations'
    lnx_version = 1

    property0: HaxeEnumProperty(
        'property0',
        items = [('By Name', 'By Name', 'By Name'),
                 ('Contains', 'Contains', 'Contains'),
                 ('Starts With', 'Starts With', 'Starts With'),
                 ('Ends With', 'Ends With', 'Ends With'),
                 ],
        name='', default='By Name')

    def lnx_init(self, context):
        self.add_input('LnxNodeSocketObject', 'Parent')
        self.add_input('LnxStringSocket', 'Child Name')

        self.add_output('LnxNodeSocketObject', 'Child')

    def draw_buttons(self, context, layout):
        layout.prop(self, 'property0')