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

Function push_scene_undo_snapshot

perro_editor/res/scripts/editor/main.rs:140–155  ·  view source on GitHub ↗
(state: &mut EditorState)

Source from the content-addressed store, hash-verified

138
139pub fn set_state_scene_doc(state: &mut EditorState, doc: &SceneDoc) {
140 let next = doc.to_text();
141 if state.doc_text != next {
142 push_scene_undo_snapshot(state);
143 state.scene_redo_stack.clear();
144 state.doc_text = next;
145 }
146 store_scene_doc_cache(&state.doc_text, doc);
147}
148
149pub fn set_state_scene_doc_loaded(state: &mut EditorState, doc: &SceneDoc) {
150 state.doc_text = doc.to_text();
151 state.scene_undo_stack.clear();
152 state.scene_redo_stack.clear();
153 store_scene_doc_cache(&state.doc_text, doc);
154}
155
156fn push_scene_undo_snapshot(state: &mut EditorState) {
157 if state.doc_text.is_empty() {
158 return;

Callers 2

set_state_scene_docFunction · 0.85
redo_scene_docFunction · 0.85

Calls 5

cloneMethod · 0.80
is_emptyMethod · 0.45
pushMethod · 0.45
lenMethod · 0.45
removeMethod · 0.45

Tested by

no test coverage detected