/
Behaviour module UI

Behaviour module UI


import Atoms
import AtomsCore
import AtomsMath
import os

class HardContstructorTests(Atoms.BehaviourModule):
    def __init__(self):
        Atoms.BehaviourModule.__init__(self)
        
        meta_type =  AtomsCore.IntMetadata()
        self.addAttribute("type", meta_type, True)
        

        self.addAttribute("p1", meta_type, True)
        self.addAttribute("p2", meta_type, True)

        
        self.addAttribute("h1", meta_type, True)
        self.addAttribute("h2", meta_type, True)                
       

        BEHAVIOUR = Atoms.GLOBAL_NAMES.BEHAVIOUR
        
        #tooltip
        tooltip_type = AtomsCore.StringMetadata("Metadata type id")
        self.addAttributeProperty("type",  BEHAVIOUR.TOOLTIP, tooltip_type)


        # hard constructor
        hc = AtomsCore.StringMetadata(BEHAVIOUR.HARD_CONSTRUCTORS.COMBOBOX)
        self.addAttributeProperty("type", BEHAVIOUR.HARD_CONSTRUCTOR, hc)

        # values and labels for the combobox
        values = AtomsCore.UIntArrayMetadata()
        values.set([0, 1, 2])
        self.addAttributeProperty("type", BEHAVIOUR.VALUE, values)
     

        labels = AtomsCore.StringArrayMetadata()
        labels.set(["first", "second", "third"])
        self.addAttributeProperty("type", BEHAVIOUR.OPTION_LIST, labels);

      
        # enable states
        enable_deps = AtomsCore.ArrayMetadata()
        el1 = AtomsCore.StringArrayMetadata()
        el1.set(["p1"])
        el2 = AtomsCore.StringArrayMetadata()
        el2.set(["p2"])
        el3 = AtomsCore.StringArrayMetadata()
        el3.set([])
        enable_deps.append(el1)
        enable_deps.append(el2)
        enable_deps.append(el3)

        self.addAttributeProperty("type", BEHAVIOUR.ENABLE_STATUS_DEPENDENCY, enable_deps)


        # visibility states  
        vis_deps = AtomsCore.ArrayMetadata()
        el1 = AtomsCore.StringArrayMetadata()
        el1.set(["h1"])
        el2 = AtomsCore.StringArrayMetadata()
        el2.set(["h2"])
        el3 = AtomsCore.StringArrayMetadata()
        el3.set([])
        vis_deps.append(el1)
        vis_deps.append(el2)
        vis_deps.append(el3)

        self.addAttributeProperty("type", BEHAVIOUR.VISIBLE_STATUS_DEPENDENCY, vis_deps)

    
    @staticmethod
    def category():
        return "Python"







Related content

Joint Aim (python)
Joint Aim (python)
More like this
Behaviour module handling
Behaviour module handling
More like this
Runtime Attribute Access
Runtime Attribute Access
More like this
Agent Aim
More like this
Extending Atoms UI and Variation UI buttons
Extending Atoms UI and Variation UI buttons
More like this
Creating a new Behaviour Tree decorator
Creating a new Behaviour Tree decorator
More like this

Copyright © 2017, Toolchefs LTD.