@babylonjs/gui-editor 5.17.1 → 5.20.0

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.
@@ -24,6 +24,8 @@ interface ICommandButtonComponentProps {
24
24
  icon: string;
25
25
  iconLabel?: string;
26
26
  isActive: boolean;
27
+ copyDeleteDisabled?: boolean;
28
+ pasteDisabled?: boolean;
27
29
  onClick: () => void;
28
30
  altStyle?: boolean;
29
31
  disabled?: boolean;
@@ -994,6 +996,8 @@ export class WorkbenchComponent extends React.Component<IWorkbenchComponentProps
994
996
  private _pointerTravelDistance;
995
997
  private _processSelectionOnUp;
996
998
  private _visibleRegionContainer;
999
+ private _currLeft;
1000
+ private _currTop;
997
1001
  get visibleRegionContainer(): Container;
998
1002
  private _panAndZoomContainer;
999
1003
  get panAndZoomContainer(): Container;
@@ -1008,7 +1012,9 @@ export class WorkbenchComponent extends React.Component<IWorkbenchComponentProps
1008
1012
  private _zoomFactor;
1009
1013
  private _zoomModeIncrement;
1010
1014
  private _guiSize;
1015
+ private _pasteDisabled;
1011
1016
  get guiSize(): ISize;
1017
+ get pasteDisabled(): boolean;
1012
1018
  set guiSize(value: ISize);
1013
1019
  applyEditorTransformation(): void;
1014
1020
  removeEditorTransformation(): void;
@@ -1051,7 +1057,7 @@ export class WorkbenchComponent extends React.Component<IWorkbenchComponentProps
1051
1057
  processSelection(): void;
1052
1058
  onDown(evt: React.PointerEvent<HTMLElement>): void;
1053
1059
  onUp(evt: React.PointerEvent): void;
1054
- createGUICanvas(): void;
1060
+ createGUICanvas(embed?: boolean): void;
1055
1061
  synchronizeLiveGUI(): void;
1056
1062
  addControls(scene: Scene): void;
1057
1063
  panning(): void;
@@ -1110,6 +1116,7 @@ export class GlobalState {
1110
1116
  private _backgroundColor;
1111
1117
  private _outlines;
1112
1118
  keys: KeyboardManager;
1119
+ private _fromPG;
1113
1120
  /** DO NOT USE: in the process of removing */
1114
1121
  blockKeyboardEvents: boolean;
1115
1122
  onOutlineChangedObservable: Observable<void>;
@@ -1118,9 +1125,11 @@ export class GlobalState {
1118
1125
  workbench: WorkbenchComponent;
1119
1126
  onPropertyChangedObservable: Observable<PropertyChangedEvent>;
1120
1127
  private _tool;
1128
+ private _prevTool;
1121
1129
  onToolChangeObservable: Observable<void>;
1122
1130
  get tool(): GUIEditorTool;
1123
1131
  set tool(newTool: GUIEditorTool);
1132
+ restorePreviousTool(): void;
1124
1133
  onFitControlsToWindowObservable: Observable<void>;
1125
1134
  onReframeWindowObservable: Observable<void>;
1126
1135
  onLoadObservable: Observable<File>;
@@ -1159,6 +1168,8 @@ export class GlobalState {
1159
1168
  /** adds copy, cut and paste listeners to the host window */
1160
1169
  registerEventListeners(): void;
1161
1170
  get backgroundColor(): Color3;
1171
+ get fromPG(): boolean;
1172
+ set fromPG(value: boolean);
1162
1173
  set backgroundColor(value: Color3);
1163
1174
  get outlines(): boolean;
1164
1175
  set outlines(value: boolean);
@@ -1199,8 +1210,9 @@ export class GUIEditor {
1199
1210
  /**
1200
1211
  * Show the gui editor
1201
1212
  * @param options defines the options to use to configure the gui editor
1213
+ * @param embed defines whether editor is being opened from the Playground
1202
1214
  */
1203
- static Show(options: IGUIEditorOptions): Promise<void>;
1215
+ static Show(options: IGUIEditorOptions, embed?: boolean): Promise<void>;
1204
1216
  }
1205
1217
 
1206
1218
  }
@@ -1346,6 +1358,9 @@ export class WorkbenchEditor extends React.Component<IGraphEditorProps, IGraphEd
1346
1358
  private _draggedItem;
1347
1359
  private _rootRef;
1348
1360
  componentDidMount(): void;
1361
+ componentWillUnmount(): void;
1362
+ addToolControls: (evt: KeyboardEvent) => void;
1363
+ removePressToolControls: (evt: KeyboardEvent) => void;
1349
1364
  constructor(props: IGraphEditorProps);
1350
1365
  showWaitScreen(): void;
1351
1366
  hideWaitScreen(): void;
@@ -1792,8 +1807,8 @@ export class FloatLineComponent extends React.Component<IFloatLineComponentProps
1792
1807
  updateValue(valueString: string): void;
1793
1808
  lock(): void;
1794
1809
  unlock(): void;
1795
- incrementValue(amount: number): void;
1796
- onKeyDown(event: React.KeyboardEvent): void;
1810
+ incrementValue(amount: number, processStep?: boolean): void;
1811
+ onKeyDown(event: React.KeyboardEvent<HTMLInputElement>): void;
1797
1812
  render(): JSX.Element;
1798
1813
  }
1799
1814
  export {};
@@ -2030,8 +2045,10 @@ export class NumericInputComponent extends React.Component<INumericInputComponen
2030
2045
  shouldComponentUpdate(nextProps: INumericInputComponentProps, nextState: {
2031
2046
  value: string;
2032
2047
  }): boolean;
2033
- updateValue(evt: any): void;
2048
+ updateValue(valueString: string): void;
2034
2049
  onBlur(): void;
2050
+ incrementValue(amount: number): void;
2051
+ onKeyDown(evt: React.KeyboardEvent<HTMLInputElement>): void;
2035
2052
  render(): JSX.Element;
2036
2053
  }
2037
2054
  export {};
@@ -2484,6 +2501,7 @@ export class GraphCanvasComponent extends React.Component<IGraphCanvasComponentP
2484
2501
  private _oldY;
2485
2502
  _frameIsMoving: boolean;
2486
2503
  _isLoading: boolean;
2504
+ _targetLinkCandidate: Nullable<NodeLink>;
2487
2505
  private _copiedNodes;
2488
2506
  private _copiedFrames;
2489
2507
  get gridSize(): number;
@@ -2510,7 +2528,7 @@ export class GraphCanvasComponent extends React.Component<IGraphCanvasComponentP
2510
2528
  private _selectedFrameAndNodesConflict;
2511
2529
  constructor(props: IGraphCanvasComponentProps);
2512
2530
  populateConnectedEntriesBeforeRemoval(item: GraphNode, items: GraphNode[], inputs: Nullable<IPortData>[], outputs: Nullable<IPortData>[]): void;
2513
- automaticRewire(inputs: Nullable<IPortData>[], outputs: Nullable<IPortData>[]): void;
2531
+ automaticRewire(inputs: Nullable<IPortData>[], outputs: Nullable<IPortData>[], firstOnly?: boolean): void;
2514
2532
  handleKeyDown(evt: KeyboardEvent, onRemove: (nodeData: INodeData) => void, mouseLocationX: number, mouseLocationY: number, dataGenerator: (nodeData: INodeData) => any, rootElement: HTMLDivElement): void;
2515
2533
  pasteSelection(copiedNodes: GraphNode[], currentX: number, currentY: number, dataGenerator: (nodeData: INodeData) => any, selectNew?: boolean): GraphNode[];
2516
2534
  reconnectNewNodes(nodeIndex: number, newNodes: GraphNode[], sourceNodes: GraphNode[], done: boolean[]): void;
@@ -2918,13 +2936,17 @@ export class NodeLink {
2918
2936
  private _selectionPath;
2919
2937
  private _onSelectionChangedObserver;
2920
2938
  private _isVisible;
2939
+ private _isTargetCandidate;
2921
2940
  onDisposedObservable: Observable<NodeLink>;
2941
+ get isTargetCandidate(): boolean;
2942
+ set isTargetCandidate(value: boolean);
2922
2943
  get isVisible(): boolean;
2923
2944
  set isVisible(value: boolean);
2924
2945
  get portA(): FrameNodePort | NodePort;
2925
2946
  get portB(): FrameNodePort | NodePort | undefined;
2926
2947
  get nodeA(): GraphNode;
2927
2948
  get nodeB(): GraphNode | undefined;
2949
+ intersectsWith(rect: DOMRect): boolean;
2928
2950
  update(endX?: number, endY?: number, straight?: boolean): void;
2929
2951
  constructor(graphCanvas: GraphCanvasComponent, portA: NodePort, nodeA: GraphNode, portB?: NodePort, nodeB?: GraphNode);
2930
2952
  onClick(evt: MouseEvent): void;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@babylonjs/gui-editor",
3
- "version": "5.17.1",
3
+ "version": "5.20.0",
4
4
  "main": "dist/babylon.guiEditor.max.js",
5
5
  "module": "dist/babylon.guiEditor.max.js",
6
6
  "esnext": "dist/babylon.guiEditor.max.js",
@@ -24,8 +24,8 @@
24
24
  "@types/react-dom": ">=16.0.9"
25
25
  },
26
26
  "devDependencies": {
27
- "@babylonjs/core": "^5.17.1",
28
- "@babylonjs/gui": "^5.17.1",
27
+ "@babylonjs/core": "^5.20.0",
28
+ "@babylonjs/gui": "^5.20.0",
29
29
  "react": "^17.0.2",
30
30
  "react-dom": "^17.0.2",
31
31
  "rimraf": "^3.0.2",