@babylonjs/gui-editor 5.18.0 → 5.21.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.
@@ -293,6 +293,7 @@ interface IGridPropertyGridComponentProps {
293
293
  grids: Grid[];
294
294
  lockObject: LockObject;
295
295
  onPropertyChangedObservable?: Observable<PropertyChangedEvent>;
296
+ onUpdateRequiredObservable?: Observable<void>;
296
297
  }
297
298
  export class GridPropertyGridComponent extends React.Component<IGridPropertyGridComponentProps> {
298
299
  constructor(props: IGridPropertyGridComponentProps);
@@ -648,6 +649,7 @@ export class SceneExplorerComponent extends React.Component<ISceneExplorerCompon
648
649
  private _onParrentingChangeObserver;
649
650
  private _onNewSceneObserver;
650
651
  private _onPropertyChangedObservable;
652
+ private _onUpdateRequiredObserver;
651
653
  constructor(props: ISceneExplorerComponentProps);
652
654
  componentDidMount(): void;
653
655
  componentWillUnmount(): void;
@@ -996,6 +998,8 @@ export class WorkbenchComponent extends React.Component<IWorkbenchComponentProps
996
998
  private _pointerTravelDistance;
997
999
  private _processSelectionOnUp;
998
1000
  private _visibleRegionContainer;
1001
+ private _currLeft;
1002
+ private _currTop;
999
1003
  get visibleRegionContainer(): Container;
1000
1004
  private _panAndZoomContainer;
1001
1005
  get panAndZoomContainer(): Container;
@@ -1055,7 +1059,7 @@ export class WorkbenchComponent extends React.Component<IWorkbenchComponentProps
1055
1059
  processSelection(): void;
1056
1060
  onDown(evt: React.PointerEvent<HTMLElement>): void;
1057
1061
  onUp(evt: React.PointerEvent): void;
1058
- createGUICanvas(): void;
1062
+ createGUICanvas(embed?: boolean): void;
1059
1063
  synchronizeLiveGUI(): void;
1060
1064
  addControls(scene: Scene): void;
1061
1065
  panning(): void;
@@ -1114,6 +1118,7 @@ export class GlobalState {
1114
1118
  private _backgroundColor;
1115
1119
  private _outlines;
1116
1120
  keys: KeyboardManager;
1121
+ private _fromPG;
1117
1122
  /** DO NOT USE: in the process of removing */
1118
1123
  blockKeyboardEvents: boolean;
1119
1124
  onOutlineChangedObservable: Observable<void>;
@@ -1122,9 +1127,11 @@ export class GlobalState {
1122
1127
  workbench: WorkbenchComponent;
1123
1128
  onPropertyChangedObservable: Observable<PropertyChangedEvent>;
1124
1129
  private _tool;
1130
+ private _prevTool;
1125
1131
  onToolChangeObservable: Observable<void>;
1126
1132
  get tool(): GUIEditorTool;
1127
1133
  set tool(newTool: GUIEditorTool);
1134
+ restorePreviousTool(): void;
1128
1135
  onFitControlsToWindowObservable: Observable<void>;
1129
1136
  onReframeWindowObservable: Observable<void>;
1130
1137
  onLoadObservable: Observable<File>;
@@ -1163,6 +1170,8 @@ export class GlobalState {
1163
1170
  /** adds copy, cut and paste listeners to the host window */
1164
1171
  registerEventListeners(): void;
1165
1172
  get backgroundColor(): Color3;
1173
+ get fromPG(): boolean;
1174
+ set fromPG(value: boolean);
1166
1175
  set backgroundColor(value: Color3);
1167
1176
  get outlines(): boolean;
1168
1177
  set outlines(value: boolean);
@@ -1203,8 +1212,9 @@ export class GUIEditor {
1203
1212
  /**
1204
1213
  * Show the gui editor
1205
1214
  * @param options defines the options to use to configure the gui editor
1215
+ * @param embed defines whether editor is being opened from the Playground
1206
1216
  */
1207
- static Show(options: IGUIEditorOptions): Promise<void>;
1217
+ static Show(options: IGUIEditorOptions, embed?: boolean): Promise<void>;
1208
1218
  }
1209
1219
 
1210
1220
  }
@@ -1299,22 +1309,6 @@ export class Portal extends React.Component<IPortalProps> {
1299
1309
  }
1300
1310
  export {};
1301
1311
 
1302
- }
1303
- declare module "@babylonjs/gui-editor/sharedComponents/messageDialog" {
1304
- import * as React from "react";
1305
- import { GlobalState } from "@babylonjs/gui-editor/globalState";
1306
- interface IMessageDialogComponentProps {
1307
- globalState: GlobalState;
1308
- }
1309
- export class MessageDialogComponent extends React.Component<IMessageDialogComponentProps, {
1310
- message: string;
1311
- isError: boolean;
1312
- }> {
1313
- constructor(props: IMessageDialogComponentProps);
1314
- render(): JSX.Element | null;
1315
- }
1316
- export {};
1317
-
1318
1312
  }
1319
1313
  declare module "@babylonjs/gui-editor/tools" {
1320
1314
  import { Control } from "@babylonjs/gui/2D/controls/control";
@@ -1341,6 +1335,7 @@ interface IGraphEditorProps {
1341
1335
  interface IGraphEditorState {
1342
1336
  showPreviewPopUp: boolean;
1343
1337
  toolbarExpand: boolean;
1338
+ message: string;
1344
1339
  }
1345
1340
  export class WorkbenchEditor extends React.Component<IGraphEditorProps, IGraphEditorState> {
1346
1341
  private _moveInProgress;
@@ -1349,7 +1344,11 @@ export class WorkbenchEditor extends React.Component<IGraphEditorProps, IGraphEd
1349
1344
  private _popUpWindow;
1350
1345
  private _draggedItem;
1351
1346
  private _rootRef;
1347
+ private _onErrorMessageObserver;
1352
1348
  componentDidMount(): void;
1349
+ componentWillUnmount(): void;
1350
+ addToolControls: (evt: KeyboardEvent) => void;
1351
+ removePressToolControls: (evt: KeyboardEvent) => void;
1353
1352
  constructor(props: IGraphEditorProps);
1354
1353
  showWaitScreen(): void;
1355
1354
  hideWaitScreen(): void;
@@ -1499,6 +1498,15 @@ export type LabelProps = {
1499
1498
  };
1500
1499
  export const Label: React.FC<LabelProps>;
1501
1500
 
1501
+ }
1502
+ declare module "@babylonjs/gui-editor/components/MessageDialog" {
1503
+ import * as React from "react";
1504
+ export interface MessageDialogProps {
1505
+ message: string;
1506
+ isError: boolean;
1507
+ }
1508
+ export const MessageDialog: React.FC<MessageDialogProps>;
1509
+
1502
1510
  }
1503
1511
  declare module "@babylonjs/gui-editor/components/Toggle" {
1504
1512
  /// <reference types="react" />
@@ -1796,8 +1804,8 @@ export class FloatLineComponent extends React.Component<IFloatLineComponentProps
1796
1804
  updateValue(valueString: string): void;
1797
1805
  lock(): void;
1798
1806
  unlock(): void;
1799
- incrementValue(amount: number): void;
1800
- onKeyDown(event: React.KeyboardEvent): void;
1807
+ incrementValue(amount: number, processStep?: boolean): void;
1808
+ onKeyDown(event: React.KeyboardEvent<HTMLInputElement>): void;
1801
1809
  render(): JSX.Element;
1802
1810
  }
1803
1811
  export {};
@@ -2034,8 +2042,10 @@ export class NumericInputComponent extends React.Component<INumericInputComponen
2034
2042
  shouldComponentUpdate(nextProps: INumericInputComponentProps, nextState: {
2035
2043
  value: string;
2036
2044
  }): boolean;
2037
- updateValue(evt: any): void;
2045
+ updateValue(valueString: string): void;
2038
2046
  onBlur(): void;
2047
+ incrementValue(amount: number): void;
2048
+ onKeyDown(evt: React.KeyboardEvent<HTMLInputElement>): void;
2039
2049
  render(): JSX.Element;
2040
2050
  }
2041
2051
  export {};
@@ -2488,6 +2498,7 @@ export class GraphCanvasComponent extends React.Component<IGraphCanvasComponentP
2488
2498
  private _oldY;
2489
2499
  _frameIsMoving: boolean;
2490
2500
  _isLoading: boolean;
2501
+ _targetLinkCandidate: Nullable<NodeLink>;
2491
2502
  private _copiedNodes;
2492
2503
  private _copiedFrames;
2493
2504
  get gridSize(): number;
@@ -2514,7 +2525,7 @@ export class GraphCanvasComponent extends React.Component<IGraphCanvasComponentP
2514
2525
  private _selectedFrameAndNodesConflict;
2515
2526
  constructor(props: IGraphCanvasComponentProps);
2516
2527
  populateConnectedEntriesBeforeRemoval(item: GraphNode, items: GraphNode[], inputs: Nullable<IPortData>[], outputs: Nullable<IPortData>[]): void;
2517
- automaticRewire(inputs: Nullable<IPortData>[], outputs: Nullable<IPortData>[]): void;
2528
+ automaticRewire(inputs: Nullable<IPortData>[], outputs: Nullable<IPortData>[], firstOnly?: boolean): void;
2518
2529
  handleKeyDown(evt: KeyboardEvent, onRemove: (nodeData: INodeData) => void, mouseLocationX: number, mouseLocationY: number, dataGenerator: (nodeData: INodeData) => any, rootElement: HTMLDivElement): void;
2519
2530
  pasteSelection(copiedNodes: GraphNode[], currentX: number, currentY: number, dataGenerator: (nodeData: INodeData) => any, selectNew?: boolean): GraphNode[];
2520
2531
  reconnectNewNodes(nodeIndex: number, newNodes: GraphNode[], sourceNodes: GraphNode[], done: boolean[]): void;
@@ -2922,13 +2933,17 @@ export class NodeLink {
2922
2933
  private _selectionPath;
2923
2934
  private _onSelectionChangedObserver;
2924
2935
  private _isVisible;
2936
+ private _isTargetCandidate;
2925
2937
  onDisposedObservable: Observable<NodeLink>;
2938
+ get isTargetCandidate(): boolean;
2939
+ set isTargetCandidate(value: boolean);
2926
2940
  get isVisible(): boolean;
2927
2941
  set isVisible(value: boolean);
2928
2942
  get portA(): FrameNodePort | NodePort;
2929
2943
  get portB(): FrameNodePort | NodePort | undefined;
2930
2944
  get nodeA(): GraphNode;
2931
2945
  get nodeB(): GraphNode | undefined;
2946
+ intersectsWith(rect: DOMRect): boolean;
2932
2947
  update(endX?: number, endY?: number, straight?: boolean): void;
2933
2948
  constructor(graphCanvas: GraphCanvasComponent, portA: NodePort, nodeA: GraphNode, portB?: NodePort, nodeB?: GraphNode);
2934
2949
  onClick(evt: MouseEvent): void;
@@ -3107,6 +3122,18 @@ const _default: {
3107
3122
  export default _default;
3108
3123
  export const Default: any;
3109
3124
 
3125
+ }
3126
+ declare module "@babylonjs/gui-editor/stories/MessageDialog.stories" {
3127
+ /// <reference types="react" />
3128
+ import { MessageDialogProps } from "@babylonjs/gui-editor/components/MessageDialog";
3129
+ const _default: {
3130
+ title: string;
3131
+ component: import("react").FC<MessageDialogProps>;
3132
+ };
3133
+ export default _default;
3134
+ export const NoError: any;
3135
+ export const Error: any;
3136
+
3110
3137
  }
3111
3138
  declare module "@babylonjs/gui-editor/stories/Toggle.stories" {
3112
3139
  /// <reference types="react" />
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@babylonjs/gui-editor",
3
- "version": "5.18.0",
3
+ "version": "5.21.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.18.0",
28
- "@babylonjs/gui": "^5.18.0",
27
+ "@babylonjs/core": "^5.21.0",
28
+ "@babylonjs/gui": "^5.21.0",
29
29
  "react": "^17.0.2",
30
30
  "react-dom": "^17.0.2",
31
31
  "rimraf": "^3.0.2",