Navigation
API > API/Editor > API/Editor/VREditor > API/Editor/VREditor/UI
Inheritance Hierarchy
- UObjectBase
- UObjectBaseUtility
- UObject
- UVREditorUISystem
References
| Module | VREditor |
| Header | /Engine/Source/Editor/VREditor/Public/UI/VREditorUISystem.h |
| Include | #include "UI/VREditorUISystem.h" |
Syntax
class UVREditorUISystem : public UObject
Remarks
VR Editor user interface manager
Variables
| Type | Name | Description | |
|---|---|---|---|
| FDelegateHandle | AssetEditorCloseDelegate | ||
| bool | bDragPanelFromOpen | If started dragging from opening a UI panel | |
| bool | bPanelCanScale | When started dragging from the radial menu we want the analog stick to be reset before the user is allowed to scale the panel. | |
| bool | bRadialMenuIsNumpad | True if the radial menu is currently displaying the numpad | |
| bool | bRadialMenuVisibleAtSwap | True if the radial menu was visible when the content was swapped | |
| bool | bRefocusViewport | Set to true when we need to refocus the viewport. | |
| bool | bSequencerOpenedFromRadialMenu | If sequenced was opened from the radial menu or somewhere else such as the content browser. | |
| TObjectPtr< class AVREditorDockableWindow > | ColorPickerUI | The color picker dockable window | |
| TWeakPtr< SWidget > | CurrentWidgetOnInfoDisplay | The current widget used on the info display. | |
| TObjectPtr< class AVREditorDockableWindow > | DraggingUI | The current UI that is being dragged | |
| FTransform | DraggingUIOffsetTransform | Offset transform from room-relative transform to the object where we picked it up at | |
| float | DragPanelFromOpenTime | The time dragging a panel that was opened resulting in an instant drag | |
| FOnRadialMenuGenerated | ExistingActionsMenu | When replacing the actions menu, store off any existing actions | |
| FText | ExistingActionsMenuLabel | When replacing the actions menu, store off the name of the existing actions menu | |
| TMap< FName, TObjectPtr< class AVREditorFloatingUI > > | FloatingUIs | All of the floating UIs. These may or may not be visible (spawned) | |
| TObjectPtr< class AVREditorFloatingUI > | InfoDisplayPanel | Our Quick Menu UI | |
| UVREditorInteractor * | InteractorDraggingUI | Dragging UIInteractor that is dragging the UI | |
| TObjectPtr< class UVREditorInteractor > | LaserInteractor | AsymmetryInteractor that has a laser and is generally interacting with the scene | |
| FVector | LastDraggingHoverLocation | The last dragged hover location by the laser | |
| TMap< FName, TObjectPtr< class AActor > > | PreviewWindowInfo | All of the preview window info. | |
| TSharedPtr< FProxyTabmanager > | ProxyTabManager | Tab Manager UIAllows us to steal the global tabs and show them in the world. | |
| TObjectPtr< class AVREditorRadialFloatingUI > | QuickRadialMenu | The Radial Menu UI | |
| TObjectPtr< UVRRadialMenuHandler > | RadialMenuHandler | The add-on that handles radial menu switching | |
| float | RadialMenuHideDelayTime | The time since the radial menu was updated | |
| FTimespan | RadialMenuModifierSpawnTime | The time the modifier was pressed at to spawn the menu | |
| TObjectPtr< class UVREditorInteractor > | UIInteractor | Interactor that usually accesses UI and other helper functionality | |
| TArray< FVRButton > | VRButtons | All buttons created for the radial and quick menus | |
| TObjectPtr< class UVREditorMode > | VRMode | Owning object |
Constructors
| Type | Name | Description | |
|---|---|---|---|
| Default constructor |
Functions
| Type | Name | Description | |
|---|---|---|---|
| TSharedRef< SWidget > | AddHoverableButton
(
TSharedRef< SWidget >& BlockWidget, |
Adds a hoverable button of a given type to an overlay, using menu data from a BlockWidget | |
| void | Builds the numpad Slate widget | ||
| void | Builds the radial menu Slate widget | ||
| bool | If a dockable window can be scaled | ||
| bool | The VR Editor UI System's rules for when drag drop should be checked for | ||
| void | CreateUIs () |
Testing SlateUI | |
| void | CreateVRColorPicker
(
const TSharedRef< SColorPicker >& ColorPicker |
Creates a VR-specific color picker. | |
| void | Hides the VR-specific color picker. | ||
| void | Can be used when the tab manager is restoring a dockable tab area | ||
| const bool | FindAllWidgetsOfType
(
TArray< TSharedRef< SWidget >>& FoundWidgets, |
Finds a widget with a given name inside the Content argument | |
| const TSharedRef< SWidget > & | FindWidgetOfType
(
const TSharedRef< SWidget >& Content, |
Finds a widget with a given name inside the Content argument | |
| AVREditorDockableWindow * | Returns the current dragged dock window, nullptr if none | ||
| float | Get the maximum dock window size | ||
| float | Get the minimum dock window size | ||
| const UVREditorMode & | GetOwner () |
Gets the owner of this system (const) | |
| UVREditorMode & | GetOwner () |
Gets the owner of this system | |
| AVREditorFloatingUI * | GetPanel
(
const VREditorPanelID& InPanelID |
Get UI panel Actor from the passed ID | |
| AVREditorRadialFloatingUI * | Returns the radial widget so other classes, like the interactors, can access its functionality | ||
| UVRRadialMenuHandler * | |||
| UVREditorInteractor * | Get the interactor that holds the radial menu | ||
| void | HandleEditorModeChanged
(
const FEditorModeID& EditorModeID, |
Handles being notified when any editor mode changes to see if any VR Editor UI needs to change. | |
| void | HideRadialMenu
(
const bool bPlaySound, |
Hides the radial menu if the specified hand is showing it | |
| void | Init
(
UVREditorMode* InVRMode |
Initializes default values for the UISystem and creates the UI panels | |
| bool | Are we currently dragging a dock window | ||
| bool | If a panel was opened and dragged with the UI interactor | ||
| bool | IsInteractorDraggingDockUI
(
const UVREditorInteractor* Interactor |
||
| void | IsProxyTabSupported
(
FTabId TabId, |
Called by proxy tab manager to ask us whether we support the specified tab ID. | |
| bool | IsShowingEditorUIPanel
(
const VREditorPanelID& InPanelID |
Returns true if the specified editor UI panel is currently visible | |
| bool | IsShowingRadialMenu
(
const UVREditorInteractor* Interactor |
Returns true if the radial menu is visible on this hand | |
| FTransform | MakeDockableUITransform
(
AVREditorDockableWindow* InitDraggingDockUI, |
Makes up a transform for a dockable UI when dragging it that includes the original offset from the laser's impact point | |
| FTransform | MakeDockableUITransformOnLaser
(
AVREditorDockableWindow* InitDraggingDockUI, |
Makes up a transform for a dockable UI when dragging it with a laser at the specified distance from the laser origin | |
| void | MakeRadialBoxMenu
(
const TSharedRef< FMultiBox >& MultiBox, |
Makes a radial box widget from the menu information contained in a MultiBox and MultiBoxWidget | |
| void | MakeUniformGridMenu
(
const TSharedRef< FMultiBox >& MultiBox, |
Makes a uniform grid widget from the menu information contained in a MultiBox and MultiBoxWidget | |
| void | OnAssetEditorOpened
(
UObject* Asset |
Called when an asset editor opens an asset while in VR Editor Mode. | |
| void | OnAttentionDrawnToTab
(
TSharedPtr< SDockTab > NewTab |
Called when the injected proxy tab manager reports needing to draw attention to a tab. | |
| void | OnCloseAssetEditor
(
UObject* Asset, |
||
| void | OnHoverBeginEffect
(
UVREditorWidgetComponent* Button |
Called when a laser or simulated mouse hover enters a button | |
| void | OnHoverEndEffect
(
UVREditorWidgetComponent* Button |
Called when a laser or simulated mouse hover leaves a button | |
| void | OnPreviewInputAction
(
FEditorViewportClient& ViewportClient, |
Called to "preview" an input event to get a first chance at it. | |
| void | OnProxyTabLaunched
(
TSharedPtr< SDockTab > NewTab |
Called when the injected proxy tab manager reports a new tab has been launched, signaling an asset editor has been launched, but really it could be any major global tab. | |
| void | OnVRAction
(
FEditorViewportClient& ViewportClient, |
Called when the user presses a button on their motion controller device | |
| void | OnVRHoverUpdate
(
UViewportInteractor* Interactor, |
Called every frame to update hover state | |
| void | Render
(
const FSceneView* SceneView, |
Called by VREditorMode to draw debug graphics every frame | |
| void | ResetAll () |
Reset function that puts you back in placement mode, closes all UIs, etc. | |
| void | SequencerOpenendFromRadialMenu
(
const bool bInOpenedFromRadialMenu |
Set if sequencer was opened from the radial menu | |
| TSharedRef< SWidget > | SetButtonFormatting
(
TSharedRef< SWidget >& BlockWidget, |
Sets the text wrap size of the text block element nested in a BlockWidget | |
| bool | Preview the UI panel's location if spawning with the UI interactor, else spawn immediately | ||
| void | Show the asset editor if it's not currently visible. | ||
| void | ShowEditorUIPanel
(
const UWidgetComponent* WidgetComponent, |
Sets whether the specified editor UI panel should be visible. | |
| void | ShowEditorUIPanel
(
const VREditorPanelID& InPanelID, |
Sets whether the specified editor UI panel should be visible. | |
| void | ShowEditorUIPanel
(
AVREditorFloatingUI* Panel, |
Sets whether the specified editor UI panel should be visible. | |
| void | Shutdown () |
Shuts down the UISystem whenever the mode is exited | |
| void | StartDraggingDockUI
(
AVREditorDockableWindow* InitDraggingDockUI, |
Start dragging a dock window on the hand | |
| void | StopDraggingDockUI
(
UVREditorInteractor* VREditorInteractor, |
Resets all values to stop dragging the current dock window | |
| void | Swaps the content of the radial menu between the radial menu and the numpad | ||
| void | Tick
(
FEditorViewportClient* ViewportClient, |
Called by VREditorMode to update us every frame | |
| void | ToggledDebugMode
(
bool bDebugModeEnabled |
When VR Mode debug was toggled. | |
| void | Hides and unhides all the editor UI panels | ||
| void | TogglePanelVisibility
(
const VREditorPanelID& InPanelID |
Toggles the visibility of the panel, if the panel is in room space it will be hidden and docked to nothing | |
| void | TransitionWorld
(
UWorld* NewWorld, |
Transition the user widgets to a new world | |
| void | TryToSpawnRadialMenu
(
UVREditorInteractor* Interactor, |
Tries to spawn the radial menu (if the specified hand isn't doing anything else) | |
| void | UpdateActorPreviewUI
(
TSharedRef< SWidget > InWidget, |
Function to force an update of the Actor Preview UI based on a change | |
| void | UpdateDetachedActorPreviewUI
(
TSharedRef< SWidget > InWidget, |
Function to force an update of the Actor Preview UI based on a change when the preview is detached from the actor | |
| void | UpdateExternalSlateUI
(
TSharedRef< SWidget > InWidget, |
||
| void | UpdateExternalUMGUI
(
const FVREditorFloatingUICreationContext& CreationContext |
||
| void | |||
| void | Function to force an update of the SequencerUI based on a change |