babylonjs-node-editor 7.24.0 → 7.25.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -68,6 +68,7 @@ declare module BABYLON.NodeEditor {
68
68
  private _moveInProgress;
69
69
  private _leftWidth;
70
70
  private _rightWidth;
71
+ private _historyStack;
71
72
  private _previewManager;
72
73
  private _mouseLocationX;
73
74
  private _mouseLocationY;
@@ -76,6 +77,7 @@ declare module BABYLON.NodeEditor {
76
77
  private _popUpWindow;
77
78
  appendBlock(dataToAppend: BABYLON.NodeMaterialBlock | BABYLON.NodeEditor.SharedUIComponents.INodeData, recursion?: boolean): BABYLON.NodeEditor.SharedUIComponents.GraphNode;
78
79
  addValueNode(type: string): BABYLON.NodeEditor.SharedUIComponents.GraphNode;
80
+ prepareHistoryStack(): void;
79
81
  componentDidMount(): void;
80
82
  componentWillUnmount(): void;
81
83
  constructor(props: IGraphEditorProps);
@@ -112,6 +114,7 @@ declare module BABYLON.NodeEditor {
112
114
  stateManager: BABYLON.NodeEditor.SharedUIComponents.StateManager;
113
115
  onBuiltObservable: BABYLON.Observable<void>;
114
116
  onResetRequiredObservable: BABYLON.Observable<boolean>;
117
+ onClearUndoStack: BABYLON.Observable<void>;
115
118
  onZoomToFitRequiredObservable: BABYLON.Observable<void>;
116
119
  onReOrganizedRequiredObservable: BABYLON.Observable<void>;
117
120
  onLogRequiredObservable: BABYLON.Observable<LogEntry>;
@@ -1055,6 +1058,55 @@ declare module BABYLON.NodeEditor.SharedUIComponents {
1055
1058
 
1056
1059
 
1057
1060
 
1061
+ }
1062
+ declare module BABYLON.NodeEditor {
1063
+
1064
+
1065
+ }
1066
+ declare module BABYLON.NodeEditor.SharedUIComponents {
1067
+ /**
1068
+ * Class handling undo / redo operations
1069
+ */
1070
+ export class HistoryStack implements BABYLON.IDisposable {
1071
+ private _history;
1072
+ private _redoStack;
1073
+ private readonly _maxHistoryLength;
1074
+ private _locked;
1075
+ private _dataProvider;
1076
+ private _applyUpdate;
1077
+ /**
1078
+ * Constructor
1079
+ * @param dataProvider defines the data provider function
1080
+ * @param applyUpdate defines the code to execute when undo/redo operation is required
1081
+ */
1082
+ constructor(dataProvider: () => any, applyUpdate: (data: any) => void);
1083
+ /**
1084
+ * Resets the stack
1085
+ */
1086
+ reset(): void;
1087
+ private _generateJSONDiff;
1088
+ private _applyJSONDiff;
1089
+ private _rebuildState;
1090
+ /**
1091
+ * Stores the current state
1092
+ */
1093
+ store(): void;
1094
+ /**
1095
+ * Undo the latest operation
1096
+ */
1097
+ undo(): void;
1098
+ /**
1099
+ * Redo the latest undo operation
1100
+ */
1101
+ redo(): void;
1102
+ /**
1103
+ * Disposes the stack
1104
+ */
1105
+ dispose(): void;
1106
+ }
1107
+
1108
+
1109
+
1058
1110
  }
1059
1111
  declare module BABYLON.NodeEditor {
1060
1112
 
@@ -1428,6 +1480,7 @@ declare module BABYLON.NodeEditor.SharedUIComponents {
1428
1480
  onCandidatePortSelectedObservable: BABYLON.Observable<BABYLON.Nullable<BABYLON.NodeEditor.SharedUIComponents.FrameNodePort | BABYLON.NodeEditor.SharedUIComponents.NodePort>>;
1429
1481
  onNewNodeCreatedObservable: BABYLON.Observable<BABYLON.NodeEditor.SharedUIComponents.GraphNode>;
1430
1482
  onRebuildRequiredObservable: BABYLON.Observable<void>;
1483
+ onNodeMovedObservable: BABYLON.Observable<BABYLON.NodeEditor.SharedUIComponents.GraphNode>;
1431
1484
  onErrorMessageDialogRequiredObservable: BABYLON.Observable<string>;
1432
1485
  onExposePortOnFrameObservable: BABYLON.Observable<BABYLON.NodeEditor.SharedUIComponents.GraphNode>;
1433
1486
  onGridSizeChanged: BABYLON.Observable<void>;