Concepts
Entry Types
Every Entry List row has a type. Eight types create managed custom properties; four draw or do something else. This distinction matters because only managed types have storage.
| Type | Creates a custom property? | Use it for |
|---|---|---|
| Float | Yes | Decimal values, sliders, factors, angles |
| Integer | Yes | Whole numbers, counts, native numeric sliders |
| Boolean | Yes | On/off toggles and checkboxes |
| Dropdown | Yes | Named choices with stable stored values |
| String | Yes | Text values |
| Array | Yes | Vectors, colors, multi-component values |
| Data-Block | Yes | A reference to a Blender data-block |
| Python | Yes | Dictionaries and other Python/IDProperty values |
| Display Link | No | Drawing an existing entry again |
| Custom | No | Existing Blender properties / internal controls |
| Text | No | Labels, dividers, spacers |
| Operator Button | No | Buttons that run an operator |
Managed vs. non-managed
Managed entries (Float, Integer, Boolean, Dropdown, String, Array, Data-Block, Python) own a custom property on a storage target. Non-managed entries (Display Link, Custom, Text, Operator Button) do not create storage — they draw, link, label, or act.
Managed value types
A floating-point custom property. Configure default value, hard min/max, optional soft limits, step, precision, and a subtype (Angle, Distance, Percentage, Factor, and more).
A whole-number custom property. Configure default value, min/max, optional soft limits, step and optional slider display. It uses a native integer property for animation and drivers — see the Integer type reference.
An on/off custom property. Draw it as a checkbox or a toggle button (with separate on/off icons), and drive its label dynamically.
A managed list of named choices, drawn as a dropdown or expanded buttons. Each choice has a stable integer value so labels and order can change without changing saved values, animation or driver comparisons.
A text custom property with optional multiline display and a placeholder. Its Dynamic Labels and child conditions use exact text matching.
A typed array of Float, Integer, or Boolean elements (size 1–32). Float arrays support subtypes like color, translation, and Euler angles, and can draw as native Blender controls or as labeled component fields.
A reference to a Blender data-block (Object, Material, Image, and more), drawn with Blender's native data-block picker. Pick the accepted ID Type and an optional default.
A Python/IDProperty value — dictionaries and nested data that don't fit the other editors. Edited through an Edit Value popup that validates a Python literal before writing it back.
Drawing and action types
Draws an existing managed or supported Custom entry again, with its own label, tooltip, display settings, and placement — while sharing the source value. It creates no new storage. Great for showing one value in two places, or showing only a subset of a vector's components.
Draws an existing Blender RNA property (paste a full path) or an internal PropUI generated-UI control. Existing Color Ramps and Curve Mappings draw their native editors. No managed storage is created.
Non-property content: a Text label, a Divider line, or a Spacer. Supports alignment, alert styling, and before/after icons, and can change its text dynamically. Text can also open an HTTP/HTTPS link.
A button that runs a Blender operator. Configure the operator id or call, run mode, a JSON of operator properties, and an optional report notification, or use built-in Control Group and Bone Collection actions.
Full options
For every field, range, and subtype, see the full reference: