Difference between revisions of "User-defined properties"

From Silhouette Wiki
Jump to navigation Jump to search
Line 5: Line 5:
  
 
def add_character_name_prop(shape):
 
def add_character_name_prop(shape):
if shape.isType("Shape"):
+
    if shape.isType("Shape"):
if not shape.property("character_name"):
+
        if not shape.property("character_name"):
prop = Property("character_name", "Character Name", "", {})
+
            prop = Property("character_name", "Character Name", "", {})
shape.addProperty(prop)
+
            shape.addProperty(prop)
  
 
import hook
 
import hook

Revision as of 19:20, 21 November 2016

User=defined Properties

Properties can be created and added to objects dynamically at runtime, either from within a custom Action or in response to a hook. For instance, a custom text field could be added to all Shapes when they are created in response to the object_created hook:

def add_character_name_prop(shape):
    if shape.isType("Shape"):
        if not shape.property("character_name"):
            prop = Property("character_name", "Character Name", "", {})
            shape.addProperty(prop)

import hook
hook.add("object_created", add_character_name_prop)