📚 Technical Reference¶
Internal registrations, data models, and structural details for developers and advanced users.
Registered Menus¶
These are the Blender menus registered by the feature set:
IZOM_PROPUI_MT_clean_hostIZOM_PROPUI_MT_clean_propIZOM_PROPUI_MT_shortcut_targetIZOM_PROPUI_MT_entry_toolsIZOM_PROPUI_MT_hide_toolsIZOM_PROPUI_MT_layout_columnIZOM_PROPUI_MT_layout_import
Registered UI Lists¶
IZOM_PROPUI_UL_entries— supports filter text, collapse, type display, parent indentation, and hidden-state pruning.IZOM_PROPUI_UL_layout_boxesIZOM_PROPUI_UL_layout_entries— uses row headers for shared rows.IZOM_PROPUI_UL_value_labels— shows ordered threshold/source summaries.
Registered Operators¶
Bulk operators (2)
pose.izom_propui_nukepose.izom_propui_remove_all_entries
Entry / general operators (16)
pose.izom_propui_add_entrypose.izom_propui_apply_type_defaultpose.izom_propui_copy_from_same_type_entrypose.izom_propui_copy_to_same_type_entriespose.izom_propui_duplicate_entrypose.izom_propui_indent_row_group_infopose.izom_propui_move_entrypose.izom_propui_pick_iconpose.izom_propui_remove_entrypose.izom_propui_reset_type_defaultpose.izom_propui_save_type_defaultpose.izom_propui_select_gl_entry_in_entry_listpose.izom_propui_select_entrypose.izom_propui_select_layout_view_itempose.izom_propui_toggle_entry_collapsepose.izom_propui_toggle_layout_row_group_collapse
Hierarchy operators (8)
pose.izom_propui_clear_parentpose.izom_propui_group_entrypose.izom_propui_indent_entrypose.izom_propui_outdent_entrypose.izom_propui_set_hidden_in_editorpose.izom_propui_set_parentpose.izom_propui_unparent_entry_childrenpose.izom_propui_unparent_entry_descendants
Layout operators (7)
pose.izom_propui_add_layout_box_rangepose.izom_propui_clear_layout_entriespose.izom_propui_group_layout_itempose.izom_propui_import_layout_entriespose.izom_propui_remove_layout_box_rangepose.izom_propui_set_layout_columnpose.izom_propui_ungroup_layout_row
Sync operators (3)
pose.izom_propui_clean_metarig_propspose.izom_propui_import_entriespose.izom_propui_sync_metarig_props
Value label operators (6)
pose.izom_propui_add_value_labelpose.izom_propui_duplicate_value_labelpose.izom_propui_move_value_labelpose.izom_propui_remove_value_labelpose.izom_propui_select_value_labelpose.izom_propui_set_value_label_source_entry
Shortcut operators (12)
pose.izom_propui_set_shortcut_targetpose.izom_propui_shortcut_add_entrypose.izom_propui_shortcut_duplicate_entrypose.izom_propui_shortcut_hide_allpose.izom_propui_shortcut_indentpose.izom_propui_shortcut_move_downpose.izom_propui_shortcut_move_uppose.izom_propui_shortcut_outdentpose.izom_propui_shortcut_promotepose.izom_propui_shortcut_remove_entrypose.izom_propui_shortcut_toggle_hidden_selectedpose.izom_propui_shortcut_unhide_all
Property Groups and Data Models¶
PropertyEntry fields
Identity: uid, parent_uid, prop_id, label, description, prop_type.
Text style: text_alignment, text_body_mode, text_link_spacing, text_linked_spacing_editor, text_vertical_alignment, text_top_spacing, text_bottom_spacing, text_line_above, text_line_above_position, text_line_below, text_line_below_position, text_use_box, text_alert, text_icon, text_icon_after.
Float config: default_float, min_float/max_float, soft min/max, use_soft_limits, step_float, precision, float_subtype.
Int config: default_int, min_int/max_int, soft min/max, use_soft_limits, step_int.
Bool config: default_bool, bool_ui_style, use_bool_state_labels, bool_label_false, bool_label_true.
Layout behavior: ui_order, display_order, display_order_input, row_slot, slider, indent_in_generated_ui, generated_ui_indent_amount, hidden_in_editor.
Dynamic labels: use_value_labels, use_other_entry_labels, text_use_other_entry_labels, value_labels collection, other_value_labels collection.
Child visibility: bool_child_visibility, number_child_visibility, visibility_inheritance_depth, visibility_match_float/int, visibility_range_max_float/int.
Child availability: bool_child_availability, number_child_availability, availability_inheritance_depth, availability_match_float/int, availability_range_max_float/int.
Other: shared_row_hidden_mode, library_overridable.
LayoutItem fields
uid, entry_uid, row_index, column_index, column_position.
LayoutViewItem fields (editor-only)
uid, kind, layout_uid, entry_uid, parent_uid, row_index, column_index, row_member_uids_json, ui_order.
LayoutBoxRange fields
uid, row_a, row_b.
ValueLabel fields
uid, rule_kind, threshold fields, target threshold fields, label, source entry uid, source bool state, target bool scope, use_other_entry_labels, text override style and all text-style overrides, nested other_value_labels collection.
ConditionalValueLabel fields
uid, rule_kind, label, threshold, source_entry_uid, source_bool_state.
Internal Editor State¶
The rig parameters also store internal editor state that preserves selection and context between operations:
- Entry/layout/layout-view/row-box active index and UID
- Selected UID JSON for entry, layout, layout view, and value-label collections
- Selection anchor UIDs
- Collapsed entry UIDs JSON and collapsed layout row UIDs JSON
- Layout UID order JSON
- Last editor context and last clicked list context
- Shortcut target
- Last synced prop IDs JSON
- Expansion flags for collapsible editor sections
Rig Type and Mixin Structure¶
The izom.PropUI rig entry point combines several mixins:
- BaseRig
- IzomPropUIGenerationMixin
- IzomPropUIPanelMixin
- IzomPropUIRawCopyMixin
Major generation-stage responsibilities: initialize, prepare generation safety, make output bone, parent output bone, configure output bone, configure custom properties, rig bones implementation, make output widget.
License¶
The source files of the Feature Set are GPL-3.0-or-later licensed.