bool UWidgetBlueprint::ValidateGeneratedClass(const UClass* InClass) { bool Result = Super::ValidateGeneratedClass(InClass); const UWidgetBlueprintGeneratedClass* GeneratedClass = Cast<const UWidgetBlueprintGeneratedClass>(InClass); if ( !ensure(GeneratedClass) ) { return false; } const UWidgetBlueprint* Blueprint = Cast<UWidgetBlueprint>(GetBlueprintFromClass(GeneratedClass)); if ( !ensure(Blueprint) ) { return false; } if ( !ensure(Blueprint->WidgetTree && ( Blueprint->WidgetTree->GetOuter() == Blueprint )) ) { return false; } else { TArray < UWidget* > AllWidgets; Blueprint->WidgetTree->GetAllWidgets(AllWidgets); for ( UWidget* Widget : AllWidgets ) { if ( !ensure(Widget->GetOuter() == Blueprint->WidgetTree) ) { return false; } } } if ( !ensure(GeneratedClass->WidgetTree && ( GeneratedClass->WidgetTree->GetOuter() == GeneratedClass )) ) { return false; } else { TArray < UWidget* > AllWidgets; GeneratedClass->WidgetTree->GetAllWidgets(AllWidgets); for ( UWidget* Widget : AllWidgets ) { if ( !ensure(Widget->GetOuter() == GeneratedClass->WidgetTree) ) { return false; } } } return Result; }
bool UScriptBlueprint::ValidateGeneratedClass(const UClass* InClass) { bool Result = Super::ValidateGeneratedClass(InClass); const UScriptBlueprintGeneratedClass* GeneratedClass = Cast<const UScriptBlueprintGeneratedClass>(InClass); if ( !ensure(GeneratedClass) ) { return false; } const UScriptBlueprint* Blueprint = Cast<UScriptBlueprint>(GetBlueprintFromClass(GeneratedClass)); if ( !ensure(Blueprint) ) { return false; } return Result; }
bool UBlueprint::ValidateGeneratedClass(const UClass* InClass) { const UBlueprintGeneratedClass* GeneratedClass = Cast<const UBlueprintGeneratedClass>(InClass); if (!ensure(GeneratedClass)) { return false; } const UBlueprint* Blueprint = GetBlueprintFromClass(GeneratedClass); if (!ensure(Blueprint)) { return false; } for (auto CompIt = Blueprint->ComponentTemplates.CreateConstIterator(); CompIt; ++CompIt) { const UActorComponent* Component = (*CompIt); if (!ensure(Component && (Component->GetOuter() == GeneratedClass))) { return false; } } for (auto CompIt = GeneratedClass->ComponentTemplates.CreateConstIterator(); CompIt; ++CompIt) { const UActorComponent* Component = (*CompIt); if (!ensure(Component && (Component->GetOuter() == GeneratedClass))) { return false; } } for (auto CompIt = Blueprint->Timelines.CreateConstIterator(); CompIt; ++CompIt) { const UTimelineTemplate* Template = (*CompIt); if (!ensure(Template && (Template->GetOuter() == GeneratedClass))) { return false; } } for (auto CompIt = GeneratedClass->Timelines.CreateConstIterator(); CompIt; ++CompIt) { const UTimelineTemplate* Template = (*CompIt); if (!ensure(Template && (Template->GetOuter() == GeneratedClass))) { return false; } } if (const USimpleConstructionScript* SimpleConstructionScript = Blueprint->SimpleConstructionScript) { if (!ensure(SimpleConstructionScript->GetOuter() == GeneratedClass)) { return false; } } if (const USimpleConstructionScript* SimpleConstructionScript = GeneratedClass->SimpleConstructionScript) { if (!ensure(SimpleConstructionScript->GetOuter() == GeneratedClass)) { return false; } } return true; }