void STutorialRoot::GoToNextStage(TWeakPtr<SWindow> InNavigationWindow) { if(CurrentTutorial != nullptr) { UEditorTutorial* OldTutorial = CurrentTutorial; int32 OldTutorialStage = CurrentTutorialStage; if(CurrentTutorialStage < CurrentTutorial->Stages.Num()) { CurrentTutorial->HandleTutorialStageEnded(CurrentTutorial->Stages[CurrentTutorialStage].Name); } if(CurrentTutorialStage + 1 >= CurrentTutorial->Stages.Num() && FName(*CurrentTutorial->NextTutorial.AssetLongPathname) != NAME_None) { TSubclassOf<UEditorTutorial> NextTutorialClass = LoadClass<UEditorTutorial>(NULL, *CurrentTutorial->NextTutorial.AssetLongPathname, NULL, LOAD_None, NULL); if(NextTutorialClass != nullptr) { LaunchTutorial(NextTutorialClass->GetDefaultObject<UEditorTutorial>(), IIntroTutorials::ETutorialStartType::TST_RESTART, InNavigationWindow, FSimpleDelegate(), FSimpleDelegate()); } else { FSlateNotificationManager::Get().AddNotification(FNotificationInfo(FText::Format(LOCTEXT("TutorialNotFound", "Could not start next tutorial {0}"), FText::FromString(CurrentTutorial->NextTutorial.AssetLongPathname)))); } } else { CurrentTutorialStage = FMath::Min(CurrentTutorialStage + 1, CurrentTutorial->Stages.Num() - 1); GetMutableDefault<UTutorialStateSettings>()->RecordProgress(CurrentTutorial, CurrentTutorialStage); } if (CurrentTutorial != nullptr && CurrentTutorialStage < CurrentTutorial->Stages.Num() && (CurrentTutorial != OldTutorial || CurrentTutorialStage != OldTutorialStage)) { CurrentTutorial->HandleTutorialStageStarted(CurrentTutorial->Stages[CurrentTutorialStage].Name); } } for(auto& TutorialWidget : TutorialWidgets) { if(TutorialWidget.Value.IsValid()) { TSharedPtr<SEditorTutorials> PinnedTutorialWidget = TutorialWidget.Value.Pin(); PinnedTutorialWidget->RebuildCurrentContent(); } } }
void SDistributionCurveEditor::OnDeleteTab() { if (TabNamesComboBox->GetSelectedItem().IsValid()) { if (TabNamesComboBox->GetSelectedItem() == TabNames[0]) { FSlateNotificationManager::Get().AddNotification( FNotificationInfo( LOCTEXT("DefaultTabCannotBeDeleted", "Default tab can not be deleted!") ) ); return; } // Remove the tab... FString Name = *TabNamesComboBox->GetSelectedItem(); SharedData->EdSetup->RemoveTab(Name); TabNames.Remove(TabNamesComboBox->GetSelectedItem()); // Force a reset of the combo contents SelectedTab = TabNames[0]; TabNamesComboBox->RefreshOptions(); SetTabSelection(SelectedTab, true); } }
FReply SAutomationExportMenu::SpawnNotification() { // Inform the UI that we have generated the report NotificationListPtr->AddNotification( FNotificationInfo( LOCTEXT("ReportGeneratedSuccessfullyNotification", "Report Generated Successfully!" )) ); return FReply::Handled(); }