Fix undo references for conversion to CPUParticles
The 'undo' reference should be the node to free when the undo history is lost, i.e. the original (GPU) Particles node. Similarly, the 'do' reference should point to the CPUParticles (result of the 'do' call). Fixes #29742.
This commit is contained in:
parent
5e21310343
commit
ed504753f4
@ -96,9 +96,9 @@ void Particles2DEditorPlugin::_menu_callback(int p_idx) {
|
||||
UndoRedo *ur = EditorNode::get_singleton()->get_undo_redo();
|
||||
ur->create_action(TTR("Convert to CPUParticles"));
|
||||
ur->add_do_method(EditorNode::get_singleton()->get_scene_tree_dock(), "replace_node", particles, cpu_particles, true, false);
|
||||
ur->add_do_reference(particles);
|
||||
ur->add_do_reference(cpu_particles);
|
||||
ur->add_undo_method(EditorNode::get_singleton()->get_scene_tree_dock(), "replace_node", cpu_particles, particles, false, false);
|
||||
ur->add_undo_reference(this);
|
||||
ur->add_undo_reference(particles);
|
||||
ur->commit_action();
|
||||
|
||||
} break;
|
||||
|
@ -315,9 +315,9 @@ void ParticlesEditor::_menu_option(int p_option) {
|
||||
UndoRedo *ur = EditorNode::get_singleton()->get_undo_redo();
|
||||
ur->create_action(TTR("Convert to CPUParticles"));
|
||||
ur->add_do_method(EditorNode::get_singleton()->get_scene_tree_dock(), "replace_node", node, cpu_particles, true, false);
|
||||
ur->add_do_reference(node);
|
||||
ur->add_do_reference(cpu_particles);
|
||||
ur->add_undo_method(EditorNode::get_singleton()->get_scene_tree_dock(), "replace_node", cpu_particles, node, false, false);
|
||||
ur->add_undo_reference(this);
|
||||
ur->add_undo_reference(node);
|
||||
ur->commit_action();
|
||||
|
||||
} break;
|
||||
|
Loading…
Reference in New Issue
Block a user