bpy.props.3.py 836 B

1234567891011121314151617181920212223242526272829303132333435
  1. """
  2. Collection Example
  3. ++++++++++++++++++
  4. Custom properties can be added to any subclass of an :class:`ID`,
  5. :class:`Bone` and :class:`PoseBone`.
  6. """
  7. import bpy
  8. # Assign a collection.
  9. class SceneSettingItem(bpy.types.PropertyGroup):
  10. name: bpy.props.StringProperty(name="Test Property", default="Unknown")
  11. value: bpy.props.IntProperty(name="Test Property", default=22)
  12. bpy.utils.register_class(SceneSettingItem)
  13. bpy.types.Scene.my_settings = bpy.props.CollectionProperty(type=SceneSettingItem)
  14. # Assume an armature object selected.
  15. print("Adding 2 values!")
  16. my_item = bpy.context.scene.my_settings.add()
  17. my_item.name = "Spam"
  18. my_item.value = 1000
  19. my_item = bpy.context.scene.my_settings.add()
  20. my_item.name = "Eggs"
  21. my_item.value = 30
  22. for my_item in bpy.context.scene.my_settings:
  23. print(my_item.name, my_item.value)