godot-orchestrator icon indicating copy to clipboard operation
godot-orchestrator copied to clipboard

Support Editor Undo/Redo operations

Open Naros opened this issue 1 year ago • 2 comments

Description

To improve the user experience, the plug-in should support complete undo/redo operations.

Implementation ideas

No response

Naros avatar Jan 05 '24 02:01 Naros

This is a good idea, because at the moment, when I want to undo the last action, I automatically press CTRL+Z on the keyboard, no cancellation occurs on the visual script canvas, but Godot intercepts this command and makes the cancellation in another place, for example, in node configurations. This can go unnoticed and break the application.

VladimirLevadnij avatar Mar 11 '24 01:03 VladimirLevadnij

Logical Operations

  • Place new node - complex step, currently cannot be undone. ⚠️
  • Delete node - complex step, currently cannot be undone. ⚠️
  • Move node ☑️
  • Change pin default value ☑️
  • Connect/Disconnect pins ☑️
  • Component Changes
    • Create Graph/Function/Variable/Signal - complex step, currently cannot be undone. ⚠️
    • Delete Graph/Function/Variable/Signal - complex step, currently cannot be undone. ⚠️
    • Rename Graph/Function/Variable/Signal - ☑️
  • Cut/Duplicate Node - complex step, currently cannot be undone. ⚠️
  • Collapse/Expand - complex step, currently cannot be undone. ⚠️
  • Add/Remove pins on editable pin nodes - complex step, currently cannot be undone. ⚠️
  • Change Base Type (seems to be handled by Inspector) ☑️
  • Export Variable Toggle (Component Panel - Inspector handled by Godot) ☑️

The current API for certain actions is insufficient to support undo/redo operations, which are identified with the ⚠️ icon. In these cases, we will continue to look into refactors to make this possible, but may be omitted in the initial undo/redo pass.

Naros avatar Jul 14 '24 02:07 Naros