MCPcopy Create free account
hub / github.com/PerroEngine/Perro / panim_summary

Function panim_summary

perro_editor/res/scripts/ui/editor_ui.rs:2646–2681  ·  view source on GitHub ↗
(project_root: &str, anim_path: &str)

Source from the content-addressed store, hash-verified

2644 .into_iter()
2645 .filter(|value| filter.is_empty() || value.to_ascii_lowercase().contains(&filter))
2646 .map(|value| InspectorPickerEntry {
2647 label: value.clone(),
2648 value,
2649 })
2650 .collect()
2651}
2652
2653fn inspector_node_picker_entries(state: &EditorState) -> Vec<InspectorPickerEntry> {
2654 if state.doc_text.is_empty() {
2655 return Vec::new();
2656 }
2657 let filter = NodePickerFilter::parse(&state.inspector_picker_filter);
2658 let doc = cached_scene_doc_shared(&state.doc_text);
2659 let allowed = inspector_picker_node_ref_types(state);
2660 doc.scene
2661 .nodes
2662 .iter()
2663 .filter_map(|node| {
2664 if !node_ref_type_allows(&allowed, node.data.node_type) {
2665 return None;
2666 }
2667 let name = doc.scene.key_name_or_id(node.key).to_string();
2668 let path = scene_node_path(&doc, node.key);
2669 let hay = format!(
2670 "{} {} {}",
2671 name.to_ascii_lowercase(),
2672 path.to_ascii_lowercase(),
2673 node.data.type_name().to_ascii_lowercase()
2674 );
2675 if !filter.text.iter().all(|needle| hay.contains(needle)) {
2676 return None;
2677 }
2678 let label = format!(
2679 "{} {} {}",
2680 node_type_icon(node.data.node_type),
2681 editor_view::short_path(&path, 26),
2682 node.data.type_name()
2683 );
2684 Some(InspectorPickerEntry { value: name, label })

Callers 2

asset_detail_textFunction · 0.85
animation_drawer_textFunction · 0.85

Calls 7

joinMethod · 0.80
res_to_absFunction · 0.70
load_stringFunction · 0.50
is_emptyMethod · 0.45
containsMethod · 0.45
pushMethod · 0.45
lenMethod · 0.45

Tested by

no test coverage detected