void FLandscapeEditorDetails::OnChangeTool(FName ToolSetName) { FEdModeLandscape* LandscapeEdMode = GetEditorMode(); if (LandscapeEdMode != NULL) { LandscapeEdMode->SetCurrentTool(ToolSetName); } }
void FLandscapeToolKit::OnChangeTool(FName ToolName) { FEdModeLandscape* LandscapeEdMode = GetEditorMode(); if (LandscapeEdMode != nullptr) { LandscapeEdMode->SetCurrentTool(ToolName); } }
bool ALandscapePlaceholder::TeleportTo(const FVector& DestLocation, const FRotator& DestRotation, bool bIsATest /*= false*/, bool bNoCheck /*= false*/) { bool bResult = Super::TeleportTo(DestLocation, DestRotation, bIsATest, bNoCheck); GLevelEditorModeTools().ActivateMode(FBuiltinEditorModes::EM_Landscape); FEdModeLandscape* EdMode = (FEdModeLandscape*)GLevelEditorModeTools().GetActiveMode(FBuiltinEditorModes::EM_Landscape); EdMode->UISettings->NewLandscape_Location = GetActorLocation(); EdMode->UISettings->NewLandscape_Rotation = GetActorRotation(); EdMode->SetCurrentTool("NewLandscape"); return bResult; }
void FLandscapeEditorDetails::OnChangeTargetLandscape(TWeakObjectPtr<ULandscapeInfo> LandscapeInfo) { FEdModeLandscape* LandscapeEdMode = GetEditorMode(); if (LandscapeEdMode) { LandscapeEdMode->CurrentToolTarget.LandscapeInfo = LandscapeInfo.Get(); LandscapeEdMode->UpdateTargetList(); // force a Leave and Enter the current tool, in case it has something about the current landscape cached LandscapeEdMode->SetCurrentTool(LandscapeEdMode->CurrentToolIndex); if (LandscapeEdMode->CurrentGizmoActor.IsValid()) { LandscapeEdMode->CurrentGizmoActor->SetTargetLandscape(LandscapeEdMode->CurrentToolTarget.LandscapeInfo.Get()); } } }
AActor* UActorFactoryLandscape::SpawnActor(UObject* Asset, ULevel* InLevel, const FVector& Location, const FRotator& Rotation, EObjectFlags ObjectFlags, const FName& Name) { GLevelEditorModeTools().ActivateMode(FBuiltinEditorModes::EM_Landscape); FEdModeLandscape* EdMode = (FEdModeLandscape*)GLevelEditorModeTools().GetActiveMode(FBuiltinEditorModes::EM_Landscape); EdMode->UISettings->NewLandscape_Location = Location; EdMode->UISettings->NewLandscape_Rotation = Rotation; EdMode->SetCurrentTool("NewLandscape"); FActorSpawnParameters SpawnInfo; SpawnInfo.OverrideLevel = InLevel; SpawnInfo.ObjectFlags = ObjectFlags; SpawnInfo.Name = Name; return InLevel->OwningWorld->SpawnActor(ALandscapePlaceholder::StaticClass(), &Location, &Rotation, SpawnInfo); }