Blender V5.0
blender::ed::animrig Namespace Reference

Classes

struct  PathValue

Enumerations

enum  AssetModifyMode { MODIFY_ADJUST = 0 , MODIFY_REPLACE , MODIFY_ADD , MODIFY_REMOVE }

Functions

static const EnumPropertyItemrna_asset_library_reference_itemf (bContext *, PointerRNA *, PropertyRNA *, bool *r_free)
static Vector< RNAPathconstruct_pose_rna_paths (const PointerRNA &bone_pointer)
static blender::animrig::Actionextract_pose (Main &bmain, const blender::Span< Object * > pose_objects)
static void ensure_asset_ui_visible (bContext &C)
static blender::Vector< Object * > get_selected_pose_objects (bContext *C)
static wmOperatorStatus create_pose_asset_local (bContext *C, wmOperator *op, const StringRefNull name, const AssetLibraryReference lib_ref)
static wmOperatorStatus create_pose_asset_user_library (bContext *C, wmOperator *op, const char name[MAX_NAME], const AssetLibraryReference lib_ref)
static wmOperatorStatus pose_asset_create_exec (bContext *C, wmOperator *op)
static wmOperatorStatus pose_asset_create_invoke (bContext *C, wmOperator *op, const wmEvent *)
static bool pose_asset_create_poll (bContext *C)
static void visit_library_prop_catalogs_catalog_for_search_fn (const bContext *C, PointerRNA *ptr, PropertyRNA *, const char *edit_text, FunctionRef< void(StringPropertySearchVisitParams)> visit_fn)
void POSELIB_OT_create_pose_asset (wmOperatorType *ot)
static bActionget_action_of_selected_asset (bContext *C)
static Vector< PathValuegenerate_path_values (Object &pose_object)
static void replace_pose_key (Main &bmain, blender::animrig::StripKeyframeData &strip_data, const blender::animrig::Slot &slot, const float2 time_value, const blender::animrig::FCurveDescriptor &fcurve_descriptor)
static void update_pose_action_from_scene (Main *bmain, blender::animrig::Action &pose_action, Object &pose_object, const AssetModifyMode mode)
static wmOperatorStatus pose_asset_modify_exec (bContext *C, wmOperator *op)
static bool pose_asset_modify_poll (bContext *C)
static std::string pose_asset_modify_description (bContext *, wmOperatorType *, PointerRNA *ptr)
void POSELIB_OT_asset_modify (wmOperatorType *ot)
static bool pose_asset_delete_poll (bContext *C)
static wmOperatorStatus pose_asset_delete_exec (bContext *C, wmOperator *op)
static wmOperatorStatus pose_asset_delete_invoke (bContext *C, wmOperator *op, const wmEvent *)
void POSELIB_OT_asset_delete (wmOperatorType *ot)
void POSELIB_OT_screenshot_preview (wmOperatorType *ot)

Variables

static const EnumPropertyItem prop_asset_overwrite_modes []

Enumeration Type Documentation

◆ AssetModifyMode

Enumerator
MODIFY_ADJUST 
MODIFY_REPLACE 
MODIFY_ADD 
MODIFY_REMOVE 

Definition at line 450 of file anim_asset_ops.cc.

Function Documentation

◆ construct_pose_rna_paths()

◆ create_pose_asset_local()

◆ create_pose_asset_user_library()

◆ ensure_asset_ui_visible()

void blender::ed::animrig::ensure_asset_ui_visible ( bContext & C)
static

Check that the newly created asset is visible SOMEWHERE in Blender. If not already visible, open the asset shelf on the current 3D view. The reason for not always doing that is that it might be annoying in case you have 2 3D viewports open, but you want the asset shelf on only one of them, or you work out of the asset browser.

Definition at line 183 of file anim_asset_ops.cc.

References bScreen::areabase, BKE_area_find_region_type(), SpaceFile::browse_mode, C, CTX_wm_area(), CTX_wm_manager(), ED_region_visibility_change_update(), FILE_BROWSE_MODE_ASSETS, ARegion::flag, LISTBASE_FOREACH, RGN_FLAG_HIDDEN, RGN_TYPE_ASSET_SHELF, ARegion::runtime, SPACE_FILE, SPACE_VIEW3D, SpaceType::spaceid, ScrArea::type, and WM_window_get_active_screen().

Referenced by create_pose_asset_local(), and create_pose_asset_user_library().

◆ extract_pose()

◆ generate_path_values()

◆ get_action_of_selected_asset()

◆ get_selected_pose_objects()

◆ pose_asset_create_exec()

◆ pose_asset_create_invoke()

◆ pose_asset_create_poll()

bool blender::ed::animrig::pose_asset_create_poll ( bContext * C)
static

Definition at line 404 of file anim_asset_ops.cc.

References C, and ED_operator_posemode_context().

Referenced by POSELIB_OT_create_pose_asset().

◆ pose_asset_delete_exec()

◆ pose_asset_delete_invoke()

wmOperatorStatus blender::ed::animrig::pose_asset_delete_invoke ( bContext * C,
wmOperator * op,
const wmEvent *  )
static

◆ pose_asset_delete_poll()

◆ pose_asset_modify_description()

std::string blender::ed::animrig::pose_asset_modify_description ( bContext * ,
wmOperatorType * ,
PointerRNA * ptr )
static

◆ pose_asset_modify_exec()

◆ pose_asset_modify_poll()

◆ POSELIB_OT_asset_delete()

void blender::ed::animrig::POSELIB_OT_asset_delete ( wmOperatorType * ot)

◆ POSELIB_OT_asset_modify()

◆ POSELIB_OT_create_pose_asset()

◆ POSELIB_OT_screenshot_preview()

void blender::ed::animrig::POSELIB_OT_screenshot_preview ( wmOperatorType * ot)

References ot.

◆ replace_pose_key()

◆ rna_asset_library_reference_itemf()

const EnumPropertyItem * blender::ed::animrig::rna_asset_library_reference_itemf ( bContext * ,
PointerRNA * ,
PropertyRNA * ,
bool * r_free )
static

◆ update_pose_action_from_scene()

◆ visit_library_prop_catalogs_catalog_for_search_fn()

void blender::ed::animrig::visit_library_prop_catalogs_catalog_for_search_fn ( const bContext * C,
PointerRNA * ptr,
PropertyRNA * ,
const char * edit_text,
FunctionRef< void(StringPropertySearchVisitParams)> visit_fn )
static

Variable Documentation

◆ prop_asset_overwrite_modes

const EnumPropertyItem blender::ed::animrig::prop_asset_overwrite_modes[]
static
Initial value:
= {
"ADJUST",
0,
"Adjust",
"Update existing channels in the pose asset but don't remove or add any channels"},
"REPLACE",
0,
"Replace with Selection",
"Completely replace all channels in the pose asset with the current selection"},
"ADD",
0,
"Add Selected Bones",
"Add channels of the selection to the pose asset. Existing channels will be updated"},
"REMOVE",
0,
"Remove Selected Bones",
"Remove channels of the selection from the pose asset"},
{0, nullptr, 0, nullptr, nullptr},
}

Definition at line 457 of file anim_asset_ops.cc.

Referenced by pose_asset_modify_description(), and POSELIB_OT_asset_modify().