You've already forked UnrealEngineUWP
mirror of
https://github.com/izzy2lost/UnrealEngineUWP.git
synced 2026-03-26 18:15:20 -07:00
1165 lines
38 KiB
C++
1165 lines
38 KiB
C++
// Copyright 1998-2014 Epic Games, Inc. All Rights Reserved.
|
|
|
|
|
|
|
|
#pragma once
|
|
|
|
#include "IToolkit.h"
|
|
#include "LightmapResRatioAdjust.h"
|
|
#include "Developer/AssetTools/Public/IAssetTypeActions.h"
|
|
|
|
/**
|
|
* Unreal level editor actions
|
|
*/
|
|
class LEVELEDITOR_API FLevelEditorCommands : public TCommands<FLevelEditorCommands>
|
|
{
|
|
|
|
public:
|
|
FLevelEditorCommands() : TCommands<FLevelEditorCommands>
|
|
(
|
|
"LevelEditor", // Context name for fast lookup
|
|
NSLOCTEXT("Contexts", "LevelEditor", "Level Editor"), // Localized context name for displaying
|
|
"MainFrame", // Parent
|
|
FEditorStyle::GetStyleSetName() // Icon Style Set
|
|
)
|
|
{
|
|
}
|
|
|
|
|
|
/**
|
|
* Initialize commands
|
|
*/
|
|
virtual void RegisterCommands() override;
|
|
|
|
public:
|
|
|
|
TSharedPtr< FUICommandInfo > BrowseDocumentation;
|
|
TSharedPtr< FUICommandInfo > BrowseAPIReference;
|
|
TSharedPtr< FUICommandInfo > BrowseViewportControls;
|
|
|
|
/** Level file commands */
|
|
TSharedPtr< FUICommandInfo > NewLevel;
|
|
TSharedPtr< FUICommandInfo > OpenLevel;
|
|
TSharedPtr< FUICommandInfo > Save;
|
|
TSharedPtr< FUICommandInfo > SaveAs;
|
|
TSharedPtr< FUICommandInfo > SaveAllLevels;
|
|
|
|
static const int32 MaxRecentFiles = 10;
|
|
TArray< TSharedPtr< FUICommandInfo > > OpenRecentFileCommands;
|
|
|
|
static const int32 MaxFavoriteFiles = 10;
|
|
TArray< TSharedPtr< FUICommandInfo > > OpenFavoriteFileCommands;
|
|
|
|
TSharedPtr< FUICommandInfo > ToggleFavorite;
|
|
TArray< TSharedPtr< FUICommandInfo > > RemoveFavoriteCommands;
|
|
|
|
/** Import */
|
|
TSharedPtr< FUICommandInfo > Import;
|
|
|
|
/** Export All */
|
|
TSharedPtr< FUICommandInfo > ExportAll;
|
|
|
|
/** Export Selected */
|
|
TSharedPtr< FUICommandInfo > ExportSelected;
|
|
|
|
|
|
/** Build commands */
|
|
TSharedPtr< FUICommandInfo > Build;
|
|
TSharedPtr< FUICommandInfo > BuildAndSubmitToSourceControl;
|
|
TSharedPtr< FUICommandInfo > BuildLightingOnly;
|
|
TSharedPtr< FUICommandInfo > BuildReflectionCapturesOnly;
|
|
TSharedPtr< FUICommandInfo > BuildLightingOnly_VisibilityOnly;
|
|
TSharedPtr< FUICommandInfo > LightingBuildOptions_UseErrorColoring;
|
|
TSharedPtr< FUICommandInfo > LightingBuildOptions_ShowLightingStats;
|
|
TSharedPtr< FUICommandInfo > BuildGeometryOnly;
|
|
TSharedPtr< FUICommandInfo > BuildGeometryOnly_OnlyCurrentLevel;
|
|
TSharedPtr< FUICommandInfo > BuildPathsOnly;
|
|
TSharedPtr< FUICommandInfo > LightingQuality_Production;
|
|
TSharedPtr< FUICommandInfo > LightingQuality_High;
|
|
TSharedPtr< FUICommandInfo > LightingQuality_Medium;
|
|
TSharedPtr< FUICommandInfo > LightingQuality_Preview;
|
|
TSharedPtr< FUICommandInfo > LightingTools_ShowBounds;
|
|
TSharedPtr< FUICommandInfo > LightingTools_ShowTraces;
|
|
TSharedPtr< FUICommandInfo > LightingTools_ShowDirectOnly;
|
|
TSharedPtr< FUICommandInfo > LightingTools_ShowIndirectOnly;
|
|
TSharedPtr< FUICommandInfo > LightingTools_ShowIndirectSamples;
|
|
TSharedPtr< FUICommandInfo > LightingDensity_RenderGrayscale;
|
|
TSharedPtr< FUICommandInfo > LightingResolution_CurrentLevel;
|
|
TSharedPtr< FUICommandInfo > LightingResolution_SelectedLevels;
|
|
TSharedPtr< FUICommandInfo > LightingResolution_AllLoadedLevels;
|
|
TSharedPtr< FUICommandInfo > LightingResolution_SelectedObjectsOnly;
|
|
TSharedPtr< FUICommandInfo > LightingStaticMeshInfo;
|
|
TSharedPtr< FUICommandInfo > SceneStats;
|
|
TSharedPtr< FUICommandInfo > TextureStats;
|
|
TSharedPtr< FUICommandInfo > MapCheck;
|
|
|
|
/** Recompile */
|
|
TSharedPtr< FUICommandInfo > RecompileLevelEditor;
|
|
TSharedPtr< FUICommandInfo > ReloadLevelEditor;
|
|
TSharedPtr< FUICommandInfo > RecompileGameCode;
|
|
|
|
/**
|
|
* Level context menu commands. These are shared between all viewports
|
|
* and rely on GCurrentLevelEditingViewport
|
|
* @todo Slate: Do these belong in their own context?
|
|
*/
|
|
|
|
/** Edits associated asset(s), prompting for confirmation if there is more than one selected */
|
|
TSharedPtr< FUICommandInfo > EditAsset;
|
|
|
|
/** Edits associated asset(s) */
|
|
TSharedPtr< FUICommandInfo > EditAssetNoConfirmMultiple;
|
|
|
|
/** Snaps the camera to the selected actors. */
|
|
TSharedPtr< FUICommandInfo > SnapCameraToActor;
|
|
|
|
/** Goes to the source code for the selected actor's class. */
|
|
TSharedPtr< FUICommandInfo > GoToCodeForActor;
|
|
|
|
/** Goes to the documentation for the selected actor's class. */
|
|
TSharedPtr< FUICommandInfo > GoToDocsForActor;
|
|
|
|
/** Paste actor at click location*/
|
|
TSharedPtr< FUICommandInfo > PasteHere;
|
|
|
|
/**
|
|
* Actor Transform Commands
|
|
*/
|
|
|
|
/** Snaps the actor to the grid at its pivot*/
|
|
TSharedPtr< FUICommandInfo > SnapOriginToGrid;
|
|
|
|
/** Snaps each selected actor separately to the grid at its pivot*/
|
|
TSharedPtr< FUICommandInfo > SnapOriginToGridPerActor;
|
|
|
|
/** Aligns the actor to the grid at its pivot*/
|
|
TSharedPtr< FUICommandInfo > AlignOriginToGrid;
|
|
|
|
/** Snaps the actor to the floor*/
|
|
TSharedPtr< FUICommandInfo > SnapToFloor;
|
|
|
|
/** Aligns the actor with the floor */
|
|
TSharedPtr< FUICommandInfo > AlignToFloor;
|
|
|
|
/** Snaps the actor to the floor at its pivot*/
|
|
TSharedPtr< FUICommandInfo > SnapPivotToFloor;
|
|
|
|
/** Aligns the actor to the floor at its pivot */
|
|
TSharedPtr< FUICommandInfo > AlignPivotToFloor;
|
|
|
|
/** Snaps the actor to the floor at its bottom center bounds position*/
|
|
TSharedPtr< FUICommandInfo > SnapBottomCenterBoundsToFloor;
|
|
|
|
/** Aligns the actor to the floor at its bottom center bounds position*/
|
|
TSharedPtr< FUICommandInfo > AlignBottomCenterBoundsToFloor;
|
|
|
|
/** Snaps the actor to another actor at its pivot*/
|
|
TSharedPtr< FUICommandInfo > SnapOriginToActor;
|
|
|
|
/** Aligns the actor to another actor at its pivot*/
|
|
TSharedPtr< FUICommandInfo > AlignOriginToActor;
|
|
|
|
/** Snaps the actor to another actor */
|
|
TSharedPtr< FUICommandInfo > SnapToActor;
|
|
|
|
/** Aligns the actor with another actor */
|
|
TSharedPtr< FUICommandInfo > AlignToActor;
|
|
|
|
/** Snaps the actor to another actor at its pivot */
|
|
TSharedPtr< FUICommandInfo > SnapPivotToActor;
|
|
|
|
/** Aligns the actor to another actor at its pivot */
|
|
TSharedPtr< FUICommandInfo > AlignPivotToActor;
|
|
|
|
/** Snaps the actor to the Actor at its bottom center bounds position*/
|
|
TSharedPtr< FUICommandInfo > SnapBottomCenterBoundsToActor;
|
|
|
|
/** Aligns the actor to the Actor at its bottom center bounds position*/
|
|
TSharedPtr< FUICommandInfo > AlignBottomCenterBoundsToActor;
|
|
|
|
/** Apply delta transform to selected actors */
|
|
TSharedPtr< FUICommandInfo > DeltaTransformToActors;
|
|
|
|
/** Mirros the actor along the x axis */
|
|
TSharedPtr< FUICommandInfo > MirrorActorX;
|
|
|
|
/** Mirros the actor along the y axis */
|
|
TSharedPtr< FUICommandInfo > MirrorActorY;
|
|
|
|
/** Mirros the actor along the z axis */
|
|
TSharedPtr< FUICommandInfo > MirrorActorZ;
|
|
|
|
/** Locks the actor so it cannot be moved */
|
|
TSharedPtr< FUICommandInfo > LockActorMovement;
|
|
|
|
/** Saves the pivot to the pre-pivot */
|
|
TSharedPtr< FUICommandInfo > SavePivotToPrePivot;
|
|
|
|
/** Resets the pre-pivot */
|
|
TSharedPtr< FUICommandInfo > ResetPrePivot;
|
|
|
|
/** Resets the pivot */
|
|
TSharedPtr< FUICommandInfo > ResetPivot;
|
|
|
|
/** Moves the pivot to the click location */
|
|
TSharedPtr< FUICommandInfo > MovePivotHere;
|
|
|
|
/** Moves the pivot to the click location and snap it to the grid */
|
|
TSharedPtr< FUICommandInfo > MovePivotHereSnapped;
|
|
|
|
/** Moves the pivot to the center of the selection */
|
|
TSharedPtr< FUICommandInfo > MovePivotToCenter;
|
|
|
|
/** Detach selected actor(s) from any parent */
|
|
TSharedPtr< FUICommandInfo > DetachFromParent;
|
|
|
|
TSharedPtr< FUICommandInfo > AttachSelectedActors;
|
|
|
|
TSharedPtr< FUICommandInfo > AttachActorIteractive;
|
|
|
|
TSharedPtr< FUICommandInfo > CreateNewOutlinerFolder;
|
|
|
|
TSharedPtr< FUICommandInfo > HoldToEnableVertexSnapping;
|
|
|
|
/**
|
|
* Brush Commands
|
|
*/
|
|
|
|
/** Put the selected brushes first in the draw order */
|
|
TSharedPtr< FUICommandInfo > OrderFirst;
|
|
|
|
/** Put the selected brushes last in the draw order */
|
|
TSharedPtr< FUICommandInfo > OrderLast;
|
|
|
|
/** Converts the brush to an additive brush */
|
|
TSharedPtr< FUICommandInfo > ConvertToAdditive;
|
|
|
|
/** Converts the brush to a subtractive brush */
|
|
TSharedPtr< FUICommandInfo > ConvertToSubtractive;
|
|
|
|
/** Make the brush solid */
|
|
TSharedPtr< FUICommandInfo > MakeSolid;
|
|
|
|
/** Make the brush semi-solid */
|
|
TSharedPtr< FUICommandInfo > MakeSemiSolid;
|
|
|
|
/** Make the brush non-solid */
|
|
TSharedPtr< FUICommandInfo > MakeNonSolid;
|
|
|
|
/** Merge bsp polys into as few faces as possible*/
|
|
TSharedPtr< FUICommandInfo > MergePolys;
|
|
|
|
/** Reverse a merge */
|
|
TSharedPtr< FUICommandInfo > SeparatePolys;
|
|
|
|
|
|
/**
|
|
* Actor group commands
|
|
*/
|
|
|
|
/** Group or regroup the selected actors depending on context*/
|
|
TSharedPtr< FUICommandInfo > RegroupActors;
|
|
/** Groups selected actors */
|
|
TSharedPtr< FUICommandInfo > GroupActors;
|
|
/** Ungroups selected actors */
|
|
TSharedPtr< FUICommandInfo > UngroupActors;
|
|
/** Adds the selected actors to the selected group */
|
|
TSharedPtr< FUICommandInfo > AddActorsToGroup;
|
|
/** Removes selected actors from the group */
|
|
TSharedPtr< FUICommandInfo > RemoveActorsFromGroup;
|
|
/** Locks the selected group */
|
|
TSharedPtr< FUICommandInfo > LockGroup;
|
|
/** Unlocks the selected group */
|
|
TSharedPtr< FUICommandInfo > UnlockGroup;
|
|
/** Opens a dialog window for creating mesh proxies */
|
|
TSharedPtr< FUICommandInfo > MergeActors;
|
|
/** Merge selected actors grouping them by materials */
|
|
TSharedPtr< FUICommandInfo > MergeActorsByMaterials;
|
|
|
|
/**
|
|
* Visibility commands
|
|
*/
|
|
/** Shows all actors */
|
|
TSharedPtr< FUICommandInfo > ShowAll;
|
|
|
|
/** Shows only selected actors */
|
|
TSharedPtr< FUICommandInfo > ShowSelectedOnly;
|
|
|
|
/** Unhides selected actors */
|
|
TSharedPtr< FUICommandInfo > ShowSelected;
|
|
|
|
/** Hides selected actors */
|
|
TSharedPtr< FUICommandInfo > HideSelected;
|
|
|
|
/** Shows all actors at startup */
|
|
TSharedPtr< FUICommandInfo > ShowAllStartup;
|
|
|
|
/** Shows selected actors at startup */
|
|
TSharedPtr< FUICommandInfo > ShowSelectedStartup;
|
|
|
|
/** Hides selected actors at startup */
|
|
TSharedPtr< FUICommandInfo > HideSelectedStartup;
|
|
|
|
/** Cycles through all navigation data to show one at a time */
|
|
TSharedPtr< FUICommandInfo > CycleNavigationDataDrawn;
|
|
|
|
/**
|
|
* Selection commands
|
|
*/
|
|
|
|
/** Select nothing */
|
|
TSharedPtr< FUICommandInfo > SelectNone;
|
|
|
|
/** Invert the current selection */
|
|
TSharedPtr< FUICommandInfo > InvertSelection;
|
|
|
|
/** Selects all actors of the same class as the current selection */
|
|
TSharedPtr< FUICommandInfo > SelectAllActorsOfSameClass;
|
|
|
|
/** Selects all actors of the same class and archetype as the current selection */
|
|
TSharedPtr< FUICommandInfo > SelectAllActorsOfSameClassWithArchetype;
|
|
|
|
/** Selects all lights relevant to the current selection */
|
|
TSharedPtr< FUICommandInfo > SelectRelevantLights;
|
|
|
|
/** Selects all actors using the same static mesh(es) as the current selection */
|
|
TSharedPtr< FUICommandInfo > SelectStaticMeshesOfSameClass;
|
|
|
|
/** Selects all actors using the same static mesh(es) and same actor class as the current selection */
|
|
TSharedPtr< FUICommandInfo > SelectStaticMeshesAllClasses;
|
|
|
|
/** Selects all actors using the same skeletal mesh(es) as the current selection */
|
|
TSharedPtr< FUICommandInfo > SelectSkeletalMeshesOfSameClass;
|
|
|
|
/** Selects all actors using the same skeletal mesh(es) and same actor class as the current selection */
|
|
TSharedPtr< FUICommandInfo > SelectSkeletalMeshesAllClasses;
|
|
|
|
/** Selects all actors using the same material(s) as the current selection */
|
|
TSharedPtr< FUICommandInfo > SelectAllWithSameMaterial;
|
|
|
|
/** Selects all actors used by currently selected matinee actor */
|
|
TSharedPtr< FUICommandInfo > SelectAllActorsControlledByMatinee;
|
|
|
|
/** Selects all emitters using the same particle system as the current selection */
|
|
TSharedPtr< FUICommandInfo > SelectMatchingEmitter;
|
|
|
|
/** Selects all lights */
|
|
TSharedPtr< FUICommandInfo > SelectAllLights;
|
|
|
|
/** Selects all lights exceeding the overlap limit */
|
|
TSharedPtr< FUICommandInfo > SelectStationaryLightsExceedingOverlap;
|
|
|
|
/** Selects all additive brushes */
|
|
TSharedPtr< FUICommandInfo > SelectAllAddditiveBrushes;
|
|
|
|
/** Selects all subtractive brushes */
|
|
TSharedPtr< FUICommandInfo > SelectAllSubtractiveBrushes;
|
|
|
|
/** Selects all semi-solid brushes */
|
|
TSharedPtr< FUICommandInfo > SelectAllSemiSolidBrushes;
|
|
|
|
/** Selects all non-solid brushes */
|
|
TSharedPtr< FUICommandInfo > SelectAllNonSolidBrushes;
|
|
|
|
/**
|
|
* Surface commands
|
|
*/
|
|
TSharedPtr< FUICommandInfo > SelectAllSurfaces;
|
|
|
|
/** Select all surfaces in the same brush as the current surface selection */
|
|
TSharedPtr< FUICommandInfo > SurfSelectAllMatchingBrush;
|
|
|
|
/** Select all surfaces using the same material as current surface selection */
|
|
TSharedPtr< FUICommandInfo > SurfSelectAllMatchingTexture;
|
|
|
|
/** Select all surfaces adjacent to current surface selection */
|
|
TSharedPtr< FUICommandInfo > SurfSelectAllAdjacents;
|
|
|
|
/** Select all surfaces adjacent and coplanar to current surface selection */
|
|
TSharedPtr< FUICommandInfo > SurfSelectAllAdjacentCoplanars;
|
|
|
|
/** Select all surfaces adjacent to to current surface selection that are walls*/
|
|
TSharedPtr< FUICommandInfo > SurfSelectAllAdjacentWalls;
|
|
|
|
/** Select all surfaces adjacent to to current surface selection that are floors(normals pointing up)*/
|
|
TSharedPtr< FUICommandInfo > SurfSelectAllAdjacentFloors;
|
|
|
|
/** Select all surfaces adjacent to to current surface selection that are slants*/
|
|
TSharedPtr< FUICommandInfo > SurfSelectAllAdjacentSlants;
|
|
|
|
/** Invert current surface selection */
|
|
TSharedPtr< FUICommandInfo > SurfSelectReverse;
|
|
|
|
/** Memorize current surface selection */
|
|
TSharedPtr< FUICommandInfo > SurfSelectMemorize;
|
|
|
|
/** Recall previously memorized selection */
|
|
TSharedPtr< FUICommandInfo > SurfSelectRecall;
|
|
|
|
/** Replace the current selection with only the surfaces which are both currently selected and contained within the saved selection in memory */
|
|
TSharedPtr< FUICommandInfo > SurfSelectOr;
|
|
|
|
/** Add the selection of surfaces saved in memory to the current selection */
|
|
TSharedPtr< FUICommandInfo > SurfSelectAnd;
|
|
|
|
/** Replace the current selection with only the surfaces that are not in both the current selection and the selection saved in memory */
|
|
TSharedPtr< FUICommandInfo > SurfSelectXor;
|
|
|
|
/** Unalign surface texture */
|
|
TSharedPtr< FUICommandInfo > SurfUnalign;
|
|
|
|
/** Auto align surface texture */
|
|
TSharedPtr< FUICommandInfo > SurfAlignPlanarAuto;
|
|
|
|
/** Align surface texture like its a wall */
|
|
TSharedPtr< FUICommandInfo > SurfAlignPlanarWall;
|
|
|
|
/** Align surface texture like its a floor */
|
|
TSharedPtr< FUICommandInfo > SurfAlignPlanarFloor;
|
|
|
|
/** Align surface texture using box */
|
|
TSharedPtr< FUICommandInfo > SurfAlignBox;
|
|
|
|
/** Best fit surface texture alignment */
|
|
TSharedPtr< FUICommandInfo > SurfAlignFit;
|
|
|
|
/** Apply the currently selected material to the currently selected surfaces */
|
|
TSharedPtr< FUICommandInfo > ApplyMaterialToSurface;
|
|
|
|
/**
|
|
* Static mesh commands
|
|
*/
|
|
|
|
/** Create a blocking volume from the meshes bounding box */
|
|
TSharedPtr< FUICommandInfo > CreateBoundingBoxVolume;
|
|
|
|
/** Create a blocking volume from the meshes using a heavy convex shape */
|
|
TSharedPtr< FUICommandInfo > CreateHeavyConvexVolume;
|
|
|
|
/** Create a blocking volume from the meshes using a normal convex shape */
|
|
TSharedPtr< FUICommandInfo > CreateNormalConvexVolume;
|
|
|
|
/** Create a blocking volume from the meshes using a light convex shape */
|
|
TSharedPtr< FUICommandInfo > CreateLightConvexVolume;
|
|
|
|
/** Create a blocking volume from the meshes using a rough convex shape */
|
|
TSharedPtr< FUICommandInfo > CreateRoughConvexVolume;
|
|
|
|
/** Set the collision model on the static meshes to be the same shape as the builder brush */
|
|
TSharedPtr< FUICommandInfo > SaveBrushAsCollision;
|
|
|
|
/** Set the actors collision to block all */
|
|
TSharedPtr< FUICommandInfo > SetCollisionBlockAll;
|
|
|
|
/** Set the actors collision to block only weapons */
|
|
TSharedPtr< FUICommandInfo > SetCollisionBlockWeapons;
|
|
|
|
/** Set the actors collision to block nothing */
|
|
TSharedPtr< FUICommandInfo > SetCollisionBlockNone;
|
|
|
|
/**
|
|
* Simulation commands
|
|
*/
|
|
|
|
/** Pushes properties of the selected actor back to its EditorWorld counterpart */
|
|
TSharedPtr< FUICommandInfo > KeepSimulationChanges;
|
|
|
|
|
|
/**
|
|
* Level commands
|
|
*/
|
|
|
|
/** Makes the actor level the current level */
|
|
TSharedPtr< FUICommandInfo > MakeActorLevelCurrent;
|
|
|
|
/** Move all the selected actors to the current level */
|
|
TSharedPtr< FUICommandInfo > MoveSelectedToCurrentLevel;
|
|
|
|
/** Finds the levels of the selected actors in the level browser */
|
|
TSharedPtr< FUICommandInfo > FindLevelsInLevelBrowser;
|
|
|
|
/** Add levels of the selected actors to the level browser selection */
|
|
TSharedPtr< FUICommandInfo > AddLevelsToSelection;
|
|
|
|
/** Remove levels of the selected actors from the level browser selection */
|
|
TSharedPtr< FUICommandInfo > RemoveLevelsFromSelection;
|
|
|
|
/**
|
|
* Level Script Commands
|
|
*/
|
|
TSharedPtr< FUICommandInfo > FindActorInLevelScript;
|
|
|
|
/**
|
|
* Level Menu
|
|
*/
|
|
|
|
TSharedPtr< FUICommandInfo > WorldProperties;
|
|
TSharedPtr< FUICommandInfo > OpenContentBrowser;
|
|
TSharedPtr< FUICommandInfo > OpenMarketplace;
|
|
TSharedPtr< FUICommandInfo > EditMatinee;
|
|
|
|
/**
|
|
* Blueprints commands
|
|
*/
|
|
TSharedPtr< FUICommandInfo > OpenLevelBlueprint;
|
|
TSharedPtr< FUICommandInfo > CheckOutProjectSettingsConfig;
|
|
TSharedPtr< FUICommandInfo > CreateClassBlueprint;
|
|
|
|
/** Editor mode commands */
|
|
TArray< TSharedPtr< FUICommandInfo > > EditorModeCommands;
|
|
|
|
/**
|
|
* View commands
|
|
*/
|
|
TSharedPtr< FUICommandInfo > ShowTransformWidget;
|
|
TSharedPtr< FUICommandInfo > AllowTranslucentSelection;
|
|
TSharedPtr< FUICommandInfo > AllowGroupSelection;
|
|
|
|
TSharedPtr< FUICommandInfo > StrictBoxSelect;
|
|
TSharedPtr< FUICommandInfo > TransparentBoxSelect;
|
|
TSharedPtr< FUICommandInfo > DrawBrushMarkerPolys;
|
|
TSharedPtr< FUICommandInfo > OnlyLoadVisibleInPIE;
|
|
|
|
TSharedPtr< FUICommandInfo > ToggleSocketSnapping;
|
|
TSharedPtr< FUICommandInfo > ToggleParticleSystemLOD;
|
|
TSharedPtr< FUICommandInfo > ToggleParticleSystemHelpers;
|
|
TSharedPtr< FUICommandInfo > ToggleFreezeParticleSimulation;
|
|
TSharedPtr< FUICommandInfo > ToggleLODViewLocking;
|
|
TSharedPtr< FUICommandInfo > LevelStreamingVolumePrevis;
|
|
|
|
TSharedPtr< FUICommandInfo > EnableActorSnap;
|
|
TSharedPtr< FUICommandInfo > EnableVertexSnap;
|
|
|
|
TSharedPtr< FUICommandInfo > ToggleHideViewportUI;
|
|
|
|
TSharedPtr< FUICommandInfo > AddMatinee;
|
|
|
|
TSharedPtr< FUICommandInfo > MaterialQualityLevel_Low;
|
|
TSharedPtr< FUICommandInfo > MaterialQualityLevel_High;
|
|
|
|
TSharedPtr< FUICommandInfo > FeatureLevelPreview[ERHIFeatureLevel::Num];
|
|
|
|
///**
|
|
// * Mode Commands
|
|
// */
|
|
//TSharedPtr< FUICommandInfo > BspMode;
|
|
//TSharedPtr< FUICommandInfo > MeshPaintMode;
|
|
//TSharedPtr< FUICommandInfo > LandscapeMode;
|
|
//TSharedPtr< FUICommandInfo > FoliageMode;
|
|
|
|
/**
|
|
* Misc Commands
|
|
*/
|
|
TSharedPtr< FUICommandInfo > ShowSelectedDetails;
|
|
TSharedPtr< FUICommandInfo > RecompileShaders;
|
|
TSharedPtr< FUICommandInfo > ProfileGPU;
|
|
|
|
TSharedPtr< FUICommandInfo > ResetAllParticleSystems;
|
|
TSharedPtr< FUICommandInfo > ResetSelectedParticleSystem;
|
|
TSharedPtr< FUICommandInfo > SelectActorsInLayers;
|
|
|
|
TSharedPtr< FUICommandInfo > FocusAllViewportsToSelection;
|
|
};
|
|
|
|
/**
|
|
* Implementation of various level editor action callback functions
|
|
*/
|
|
class LEVELEDITOR_API FLevelEditorActionCallbacks
|
|
{
|
|
public:
|
|
|
|
/**
|
|
* The default can execute action for all commands unless they override it
|
|
* By default commands cannot be executed if the application is in K2 debug mode.
|
|
*/
|
|
static bool DefaultCanExecuteAction();
|
|
|
|
/** Opens the global documentation homepage */
|
|
static void BrowseDocumentation();
|
|
|
|
/** Opens the API documentation CHM */
|
|
static void BrowseAPIReference();
|
|
|
|
/** Opens the viewport controls page*/
|
|
static void BrowseViewportControls();
|
|
|
|
/** Creates a new level */
|
|
static void NewLevel();
|
|
static bool NewLevel_CanExecute();
|
|
|
|
/** Opens an existing level */
|
|
static void OpenLevel();
|
|
static bool OpenLevel_CanExecute();
|
|
|
|
/** Opens delta transform */
|
|
static void DeltaTransform();
|
|
|
|
/**
|
|
* Opens a recent file
|
|
*
|
|
* @param RecentFileIndex Index into our MRU list of recent files that can be opened
|
|
*/
|
|
static void OpenRecentFile( int32 RecentFileIndex );
|
|
|
|
/**
|
|
* Opens a favorite file
|
|
*
|
|
* @param FavoriteFileIndex Index into our list of favorite files that can be opened
|
|
*/
|
|
static void OpenFavoriteFile( int32 FavoriteFileIndex );
|
|
|
|
static void ToggleFavorite();
|
|
|
|
/**
|
|
* Remove a favorite file from the favorites list
|
|
*
|
|
* @param FavoriteFileIndex Index into our list of favorite files to be removed
|
|
*/
|
|
static void RemoveFavorite( int32 FavoriteFileIndex );
|
|
|
|
static bool ToggleFavorite_CanExecute();
|
|
static bool ToggleFavorite_IsChecked();
|
|
|
|
/** Save the current level as... */
|
|
static void SaveAs();
|
|
|
|
/** Saves the current map */
|
|
static void Save();
|
|
|
|
/** Saves all unsaved maps (but not packages) */
|
|
static void SaveAllLevels();
|
|
|
|
|
|
/**
|
|
* Called when import is selected
|
|
*/
|
|
static void Import_Clicked();
|
|
|
|
|
|
/**
|
|
* Called when export all is selected
|
|
*/
|
|
static void ExportAll_Clicked();
|
|
|
|
|
|
/**
|
|
* Called when export selected is clicked
|
|
*/
|
|
static void ExportSelected_Clicked();
|
|
|
|
|
|
/**
|
|
* @return True if the export selected option is available to execute
|
|
*/
|
|
static bool ExportSelected_CanExecute();
|
|
|
|
|
|
static void ConfigureLightingBuildOptions( const FLightingBuildOptions& Options );
|
|
|
|
/**
|
|
* Build callbacks
|
|
*/
|
|
static void Build_Execute();
|
|
static void BuildAndSubmitToSourceControl_Execute();
|
|
static void BuildLightingOnly_Execute();
|
|
static bool BuildLighting_CanExecute();
|
|
static void BuildReflectionCapturesOnly_Execute();
|
|
static void BuildLightingOnly_VisibilityOnly_Execute();
|
|
static bool LightingBuildOptions_UseErrorColoring_IsChecked();
|
|
static void LightingBuildOptions_UseErrorColoring_Toggled();
|
|
static bool LightingBuildOptions_ShowLightingStats_IsChecked();
|
|
static void LightingBuildOptions_ShowLightingStats_Toggled();
|
|
static void BuildGeometryOnly_Execute();
|
|
static void BuildGeometryOnly_OnlyCurrentLevel_Execute();
|
|
static void BuildPathsOnly_Execute();
|
|
static void SetLightingQuality( ELightingBuildQuality NewQuality );
|
|
static bool IsLightingQualityChecked( ELightingBuildQuality TestQuality );
|
|
static void SetLightingToolShowBounds();
|
|
static bool IsLightingToolShowBoundsChecked();
|
|
static void SetLightingToolShowTraces();
|
|
static bool IsLightingToolShowTracesChecked();
|
|
static void SetLightingToolShowDirectOnly();
|
|
static bool IsLightingToolShowDirectOnlyChecked();
|
|
static void SetLightingToolShowIndirectOnly();
|
|
static bool IsLightingToolShowIndirectOnlyChecked();
|
|
static void SetLightingToolShowIndirectSamples();
|
|
static bool IsLightingToolShowIndirectSamplesChecked();
|
|
static float GetLightingDensityIdeal();
|
|
static void SetLightingDensityIdeal( float Value );
|
|
static float GetLightingDensityMaximum();
|
|
static void SetLightingDensityMaximum( float Value );
|
|
static float GetLightingDensityColorScale();
|
|
static void SetLightingDensityColorScale( float Value );
|
|
static float GetLightingDensityGrayscaleScale();
|
|
static void SetLightingDensityGrayscaleScale( float Value );
|
|
static void SetLightingDensityRenderGrayscale();
|
|
static bool IsLightingDensityRenderGrayscaleChecked();
|
|
static void SetLightingResolutionStaticMeshes( ESlateCheckBoxState::Type NewCheckedState );
|
|
static ESlateCheckBoxState::Type IsLightingResolutionStaticMeshesChecked();
|
|
static void SetLightingResolutionBSPSurfaces( ESlateCheckBoxState::Type NewCheckedState );
|
|
static ESlateCheckBoxState::Type IsLightingResolutionBSPSurfacesChecked();
|
|
static void SetLightingResolutionLevel( FLightmapResRatioAdjustSettings::AdjustLevels NewLevel );
|
|
static bool IsLightingResolutionLevelChecked( FLightmapResRatioAdjustSettings::AdjustLevels TestLevel );
|
|
static void SetLightingResolutionSelectedObjectsOnly();
|
|
static bool IsLightingResolutionSelectedObjectsOnlyChecked();
|
|
static float GetLightingResolutionMinSMs();
|
|
static void SetLightingResolutionMinSMs( float Value );
|
|
static float GetLightingResolutionMaxSMs();
|
|
static void SetLightingResolutionMaxSMs( float Value );
|
|
static float GetLightingResolutionMinBSPs();
|
|
static void SetLightingResolutionMinBSPs( float Value );
|
|
static float GetLightingResolutionMaxBSPs();
|
|
static void SetLightingResolutionMaxBSPs( float Value );
|
|
static int32 GetLightingResolutionRatio();
|
|
static void SetLightingResolutionRatio( int32 Value );
|
|
static void SetLightingResolutionRatioCommit( int32 Value, ETextCommit::Type CommitInfo);
|
|
static void ShowLightingStaticMeshInfo();
|
|
static void AttachToActor(AActor* ParentActorPtr );
|
|
static void AttachToSocketSelection(FName SocketName, AActor* ParentActorPtr);
|
|
static void SetMaterialQualityLevel( EMaterialQualityLevel::Type NewQualityLevel );
|
|
static bool IsMaterialQualityLevelChecked( EMaterialQualityLevel::Type TestQualityLevel );
|
|
static void SetFeatureLevelPreview(ERHIFeatureLevel::Type InFeatureLevel);
|
|
static bool IsFeatureLevelPreviewChecked(ERHIFeatureLevel::Type InFeatureLevel);
|
|
|
|
/**
|
|
* Called when the Scene Stats button is clicked. Invokes the Primitive Stats dialog.
|
|
*/
|
|
static void ShowSceneStats();
|
|
|
|
/**
|
|
* Called when the Texture Stats button is clicked. Invokes the Texture Stats dialog.
|
|
*/
|
|
static void ShowTextureStats();
|
|
|
|
/**
|
|
* Called when the Map Check button is clicked. Invokes the Map Check dialog.
|
|
*/
|
|
static void MapCheck_Execute();
|
|
|
|
/** @return True if actions that should only be visible when source code is thought to be available */
|
|
static bool CanShowSourceCodeActions();
|
|
|
|
/**
|
|
* Called when the recompile buttons are clicked.
|
|
*/
|
|
static void RecompileLevelEditor_Clicked();
|
|
static void ReloadLevelEditor_Clicked();
|
|
static void RecompileGameCode_Clicked();
|
|
static bool Recompile_CanExecute();
|
|
static bool Reload_CanExecute();
|
|
|
|
/**
|
|
* Called when the FindInContentBrowser command is executed
|
|
*/
|
|
static void FindInContentBrowser_Clicked();
|
|
|
|
/** Called when the ViewReferences command is executed */
|
|
static void ViewReferences_Execute();
|
|
|
|
/** If true ViewReferences_Execute can be called */
|
|
static bool CanViewReferences();
|
|
|
|
/** Called to when "Edit Asset" is clicked */
|
|
static void EditAsset_Clicked( const EToolkitMode::Type ToolkitMode, TWeakPtr< class SLevelEditor > LevelEditor, bool bAskMultiple );
|
|
|
|
/** Called when 'detach' is clicked */
|
|
static void DetachActor_Clicked();
|
|
|
|
/** Called when attach selected actors is pressed */
|
|
static void AttachSelectedActors();
|
|
|
|
/** Called when the actor picker needs to be used to select a new parent actor */
|
|
static void AttachActorIteractive();
|
|
|
|
/** @return true if the selected actor can be attached to the given parent actor */
|
|
static bool IsAttachableActor( const AActor* const ParentActor );
|
|
|
|
/** Called when create new outliner folder is clicked */
|
|
static void CreateNewOutlinerFolder_Clicked();
|
|
|
|
/** Called when 'Go to Code for Actor' is clicked */
|
|
static void GoToCodeForActor_Clicked();
|
|
|
|
/** Called when 'Go to Documentation for Actor' is clicked */
|
|
static void GoToDocsForActor_Clicked();
|
|
|
|
/**
|
|
* Called when the LockActorMovement command is executed
|
|
*/
|
|
static void LockActorMovement_Clicked();
|
|
|
|
|
|
/**
|
|
* @return true if the lock actor menu option should appear checked
|
|
*/
|
|
static bool LockActorMovement_IsChecked();
|
|
|
|
/**
|
|
* Called when the AddActor command is executed
|
|
*
|
|
* @param ActorFactory The actor factory to use when adding the actor
|
|
* @param bUsePlacement Whether to use the placement editor. If not, the actor will be placed at the last click.
|
|
* @param ActorLocation [opt] If NULL, positions the actor at the mouse location, otherwise the location specified. Default is true.
|
|
*/
|
|
static void AddActor_Clicked( UActorFactory* ActorFactory, FAssetData AssetData, bool bUsePlacement );
|
|
static AActor* AddActor( UActorFactory* ActorFactory, const FAssetData& AssetData, const FTransform* ActorLocation );
|
|
|
|
/**
|
|
* Called when the AddActor command is executed and a class is selected in the actor browser
|
|
*
|
|
* @param ActorClass The class of the actor to add
|
|
*/
|
|
static void AddActorFromClass_Clicked( UClass* ActorClass );
|
|
static AActor* AddActorFromClass( UClass* ActorClass );
|
|
|
|
/**
|
|
* Replaces currently selected actors with an actor from the given actor factory
|
|
*
|
|
* @param ActorFactory The actor factory to use in replacement
|
|
*/
|
|
static void ReplaceActors_Clicked( UActorFactory* ActorFactory, FAssetData AssetData );
|
|
static AActor* ReplaceActors( UActorFactory* ActorFactory, const FAssetData& AssetData );
|
|
|
|
/**
|
|
* Called when the ReplaceActor command is executed and a class is selected in the actor browser
|
|
*
|
|
* @param ActorClass The class of the actor to replace
|
|
*/
|
|
static void ReplaceActorsFromClass_Clicked( UClass* ActorClass );
|
|
|
|
/**
|
|
* Called to check to see if the Edit commands can be executed
|
|
*
|
|
* @return true, if the operation can be performed
|
|
*/
|
|
static bool Duplicate_CanExecute();
|
|
static bool Delete_CanExecute();
|
|
static void Rename_Execute();
|
|
static bool Rename_CanExecute();
|
|
static bool Cut_CanExecute();
|
|
static bool Copy_CanExecute();
|
|
static bool Paste_CanExecute();
|
|
static bool PasteHere_CanExecute();
|
|
|
|
/**
|
|
* Called when many of the menu items in the level editor context menu are clicked
|
|
*
|
|
* @param Command The command to execute
|
|
*/
|
|
static void ExecuteExecCommand( FString Command );
|
|
|
|
/**
|
|
* Called when selecting all actors of the same class that is selected
|
|
*
|
|
* @param bArchetype true to also check that the archetype is the same
|
|
*/
|
|
static void OnSelectAllActorsOfClass( bool bArchetype );
|
|
|
|
/**
|
|
* Called to select all lights
|
|
*/
|
|
static void OnSelectAllLights();
|
|
|
|
/** Selects stationary lights that are exceeding the overlap limit. */
|
|
static void OnSelectStationaryLightsExceedingOverlap();
|
|
|
|
/**
|
|
* Selects the MatineeActor - used by Matinee Selection
|
|
*/
|
|
static void OnSelectMatineeActor( AMatineeActor * ActorToSelect );
|
|
|
|
/**
|
|
* Selects the Matinee InterpGroup
|
|
*/
|
|
static void OnSelectMatineeGroup( AActor* Actor );
|
|
|
|
/**
|
|
* Called when selecting all actors that's controlled by currently selected matinee actor
|
|
*/
|
|
static void OnSelectAllActorsControlledByMatinee();
|
|
|
|
/**
|
|
* Called to change bsp surface alignment
|
|
*
|
|
* @param AlignmentMode The new alignment mode
|
|
*/
|
|
static void OnSurfaceAlignment( ETexAlign AligmentMode );
|
|
|
|
/**
|
|
* Called to apply a material to selected surfaces
|
|
*/
|
|
static void OnApplyMaterialToSurface();
|
|
|
|
/**
|
|
* Called when the RegroupActor command is executed
|
|
*/
|
|
static void RegroupActor_Clicked();
|
|
|
|
/**
|
|
* Called when the UngroupActor command is executed
|
|
*/
|
|
static void UngroupActor_Clicked();
|
|
|
|
/**
|
|
* Called when the LockGroup command is executed
|
|
*/
|
|
static void LockGroup_Clicked();
|
|
|
|
/**
|
|
* Called when the UnlockGroup command is executed
|
|
*/
|
|
static void UnlockGroup_Clicked();
|
|
|
|
/**
|
|
* Called when the AddActorsToGroup command is executed
|
|
*/
|
|
static void AddActorsToGroup_Clicked();
|
|
|
|
/**
|
|
* Called when the RemoveActorsFromGroup command is executed
|
|
*/
|
|
static void RemoveActorsFromGroup_Clicked();
|
|
|
|
/**
|
|
* Called when the MergeActors command is executed
|
|
*/
|
|
static void MergeActors_Clicked();
|
|
|
|
/** @return Returns true if 'Merge Actors' can be used right now */
|
|
static bool CanExecuteMergeActors();
|
|
|
|
/**
|
|
* Called when the MergeActorsByMaterials command is executed
|
|
*/
|
|
static void MergeActorsByMaterials_Clicked();
|
|
|
|
/** @return Returns true if 'Merge Actors y Materials' can be used right now */
|
|
static bool CanExecuteMergeActorsByMaterials();
|
|
|
|
/**
|
|
* Called when the location grid snap is toggled off and on
|
|
*/
|
|
static void LocationGridSnap_Clicked();
|
|
|
|
/**
|
|
* @return Returns whether or not location grid snap is enabled
|
|
*/
|
|
static bool LocationGridSnap_IsChecked();
|
|
|
|
/**
|
|
* Called when the rotation grid snap is toggled off and on
|
|
*/
|
|
static void RotationGridSnap_Clicked();
|
|
|
|
/**
|
|
* @return Returns whether or not rotation grid snap is enabled
|
|
*/
|
|
static bool RotationGridSnap_IsChecked();
|
|
|
|
/**
|
|
* Called when the scale grid snap is toggled off and on
|
|
*/
|
|
static void ScaleGridSnap_Clicked();
|
|
|
|
/**
|
|
* @return Returns whether or not scale grid snap is enabled
|
|
*/
|
|
static bool ScaleGridSnap_IsChecked();
|
|
|
|
|
|
/** Called when "Keep Simulation Changes" is clicked in the viewport right click menu */
|
|
static void OnKeepSimulationChanges();
|
|
|
|
/** @return Returns true if 'Keep Simulation Changes' can be used right now */
|
|
static bool CanExecuteKeepSimulationChanges();
|
|
|
|
|
|
/**
|
|
* Makes the currently selected actors level the current level
|
|
* If multiple actors are selected they must all be in the same level
|
|
*/
|
|
static void OnMakeSelectedActorLevelCurrent();
|
|
|
|
/**
|
|
* Moves the currently selected actors to the current level
|
|
*/
|
|
static void OnMoveSelectedToCurrentLevel();
|
|
|
|
/**
|
|
* Selects the currently selected actor(s) levels in the level browser
|
|
* Deselecting everything else first
|
|
*/
|
|
static void OnFindLevelsInLevelBrowser();
|
|
|
|
/**
|
|
* Selects the currently selected actor(s) levels in the level browser
|
|
*/
|
|
static void OnSelectLevelInLevelBrowser();
|
|
|
|
/**
|
|
* Deselects the currently selected actor(s) levels in the level browser
|
|
*/
|
|
static void OnDeselectLevelInLevelBrowser();
|
|
|
|
/**
|
|
* Finds references to the currently selected actor(s) in level scripts
|
|
*/
|
|
static void OnFindActorInLevelScript();
|
|
|
|
/**
|
|
* Take the currently selected static mesh, and save the builder brush as its low poly collision model.
|
|
*/
|
|
static void OnSaveBrushAsCollision();
|
|
|
|
/** Select the world info actor and show the properties */
|
|
static void OnShowWorldProperties( TWeakPtr< SLevelEditor > LevelEditor );
|
|
|
|
/** Open the Content Browser */
|
|
static void OpenContentBrowser();
|
|
|
|
/** Open the Marketplace */
|
|
static void OpenMarketplace();
|
|
|
|
/** Checks out the Project Settings config */
|
|
static void CheckOutProjectSettingsConfig();
|
|
|
|
/** Open the level's blueprint in Kismet2 */
|
|
static void OpenLevelBlueprint( TWeakPtr< SLevelEditor > LevelEditor );
|
|
|
|
/** Returns TRUE if the user can edit the game mode Blueprint, this requires the DefaultEngine config file to be writable */
|
|
static bool CanSelectGameModeBlueprint();
|
|
|
|
/** Helps the user create a class Blueprint */
|
|
static void CreateClassBlueprint();
|
|
|
|
/** Shows only selected actors, hiding any unselected actors and unhiding any selected hidden actors. */
|
|
static void OnShowOnlySelectedActors();
|
|
|
|
/**
|
|
* View callbacks
|
|
*/
|
|
static void OnToggleTransformWidgetVisibility();
|
|
static bool OnGetTransformWidgetVisibility();
|
|
static void OnAllowTranslucentSelection();
|
|
static bool OnIsAllowTranslucentSelectionEnabled();
|
|
static void OnAllowGroupSelection();
|
|
static bool OnIsAllowGroupSelectionEnabled();
|
|
static void OnToggleStrictBoxSelect();
|
|
static bool OnIsStrictBoxSelectEnabled();
|
|
static void OnToggleTransparentBoxSelect();
|
|
static bool OnIsTransparentBoxSelectEnabled();
|
|
static void OnDrawBrushMarkerPolys();
|
|
static bool OnIsDrawBrushMarkerPolysEnabled();
|
|
static void OnToggleOnlyLoadVisibleInPIE();
|
|
static bool OnIsOnlyLoadVisibleInPIEEnabled();
|
|
static void OnToggleSocketSnapping();
|
|
static bool OnIsSocketSnappingEnabled();
|
|
static void OnToggleParticleSystemLOD();
|
|
static bool OnIsParticleSystemLODEnabled();
|
|
static void OnToggleFreezeParticleSimulation();
|
|
static bool OnIsParticleSimulationFrozen();
|
|
static void OnToggleParticleSystemHelpers();
|
|
static bool OnIsParticleSystemHelpersEnabled();
|
|
static void OnToggleLODViewLocking();
|
|
static bool OnIsLODViewLockingEnabled();
|
|
static void OnToggleLevelStreamingVolumePrevis();
|
|
static bool OnIsLevelStreamingVolumePrevisEnabled();
|
|
|
|
static FString GetAudioVolumeToolTip();
|
|
static float GetAudioVolume();
|
|
static void OnAudioVolumeChanged(float Volume);
|
|
static bool GetAudioMuted();
|
|
static void OnAudioMutedChanged(bool bMuted);
|
|
|
|
static void OnEnableActorSnap();
|
|
static bool OnIsActorSnapEnabled();
|
|
static FString GetActorSnapTooltip();
|
|
static float GetActorSnapSetting();
|
|
static void SetActorSnapSetting(float Distance);
|
|
static void OnEnableVertexSnap();
|
|
static bool OnIsVertexSnapEnabled();
|
|
|
|
static void OnToggleHideViewportUI();
|
|
static bool IsViewportUIHidden();
|
|
|
|
static bool IsEditorModeActive( FEditorModeID EditorMode );
|
|
|
|
static void MakeBuilderBrush( UClass* BrushBuilderClass );
|
|
|
|
static void OnAddVolume( UClass* VolumeClass );
|
|
|
|
static void OnAddMatinee();
|
|
|
|
static void SelectActorsInLayers();
|
|
|
|
static void SetWidgetMode( FWidget::EWidgetMode WidgetMode );
|
|
static bool IsWidgetModeActive( FWidget::EWidgetMode WidgetMode );
|
|
static bool CanSetWidgetMode( FWidget::EWidgetMode WidgetMode );
|
|
static bool IsTranslateRotateModeVisible();
|
|
static void SetCoordinateSystem( ECoordSystem CoordSystem );
|
|
static bool IsCoordinateSystemActive( ECoordSystem CoordSystem );
|
|
|
|
/**
|
|
* Return a world
|
|
*/
|
|
static class UWorld* GetWorld();
|
|
public:
|
|
/**
|
|
* Moves an actor to the grid.
|
|
*/
|
|
static void MoveActorToGrid_Clicked( bool InAlign, bool bInPerActor );
|
|
|
|
/**
|
|
* Moves an actor to another actor.
|
|
*/
|
|
static void MoveActorToActor_Clicked( bool InAlign );
|
|
|
|
/**
|
|
* Snaps an actor to the floor. Optionally will align with the trace normal.
|
|
* @param InAlign Whether or not to rotate the actor to align with the trace normal.
|
|
* @param InUseLineTrace Whether or not to only trace with a line through the world.
|
|
* @param InUseBounds Whether or not to base the line trace off of the bounds.
|
|
* @param InUsePivot Whether or not to use the pivot position.
|
|
*/
|
|
static void SnapActorToFloor_Clicked( bool InAlign, bool InUseLineTrace, bool InUseBounds, bool InUsePivot );
|
|
|
|
/**
|
|
* Snaps an actor to another actor. Optionally will align with the trace normal.
|
|
* @param InAlign Whether or not to rotate the actor to align with the trace normal.
|
|
* @param InUseLineTrace Whether or not to only trace with a line through the world.
|
|
* @param InUseBounds Whether or not to base the line trace off of the bounds.
|
|
* @param InUsePivot Whether or not to use the pivot position.
|
|
*/
|
|
static void SnapActorToActor_Clicked( bool InAlign, bool InUseLineTrace, bool InUseBounds, bool InUsePivot );
|
|
|
|
/**
|
|
* Checks to see if multiple actors are selected
|
|
* @return true if it can execute.
|
|
*/
|
|
static bool ActorsSelected_CanExecute();
|
|
|
|
/**
|
|
* Checks to see if at least a single actor is selected
|
|
* @return true if it can execute.
|
|
*/
|
|
static bool ActorSelected_CanExecute();
|
|
|
|
private:
|
|
/**
|
|
* Moves an actor...
|
|
* @param InDestination The destination actor we want to move this actor to, NULL assumes we just want to use the grid
|
|
*/
|
|
static void MoveActorTo_Clicked( const bool InAlign, const AActor* InDestination = NULL, bool bInPerActor = false );
|
|
|
|
/**
|
|
* Snaps an actor... Optionally will align with the trace normal.
|
|
* @param InAlign Whether or not to rotate the actor to align with the trace normal.
|
|
* @param InUseLineTrace Whether or not to only trace with a line through the world.
|
|
* @param InUseBounds Whether or not to base the line trace off of the bounds.
|
|
* @param InUsePivot Whether or not to use the pivot position.
|
|
* @param InDestination The destination actor we want to move this actor to, NULL assumes we just want to go towards the floor
|
|
*/
|
|
static void SnapActorTo_Clicked( const bool InAlign, const bool InUseLineTrace, const bool InUseBounds, const bool InUsePivot, const AActor* InDestination = NULL );
|
|
};
|
|
|