diff --git a/BlueprintRetarget.uplugin b/BlueprintRetarget.uplugin index 12e5f80..9aa9295 100644 --- a/BlueprintRetarget.uplugin +++ b/BlueprintRetarget.uplugin @@ -11,7 +11,7 @@ "MarketplaceURL": "", "SupportURL": "", "CanContainContent": false, - "IsBetaVersion": false, + "Installed": true, "Modules": [ { "Name": "BlueprintRetarget", @@ -19,4 +19,4 @@ "LoadingPhase": "Default" } ] -} \ No newline at end of file +} diff --git a/Config/FilterPlugin.ini b/Config/FilterPlugin.ini index ccebca2..2772bcc 100644 --- a/Config/FilterPlugin.ini +++ b/Config/FilterPlugin.ini @@ -1,8 +1,2 @@ [FilterPlugin] -; This section lists additional files which will be packaged along with your plugin. Paths should be listed relative to the root plugin directory, and -; may include "...", "*", and "?" wildcards to match directories, files, and individual characters respectively. -; -; Examples: -; /README.txt -; /Extras/... -; /Binaries/ThirdParty/*.dll +/Docs/... diff --git a/Source/BlueprintRetarget/Private/BlueprintRetarget.cpp b/Source/BlueprintRetarget/Private/BlueprintRetarget.cpp index 057cbce..c075bbe 100644 --- a/Source/BlueprintRetarget/Private/BlueprintRetarget.cpp +++ b/Source/BlueprintRetarget/Private/BlueprintRetarget.cpp @@ -1,4 +1,4 @@ -// Copyright 2015-2020 Piperift. All Rights Reserved. +// Copyright 2015-2019 Piperift. All Rights Reserved. #include "BlueprintRetarget.h" #include "ContentBrowserExtensions.h" diff --git a/Source/BlueprintRetarget/Private/ContentBrowserExtensions.cpp b/Source/BlueprintRetarget/Private/ContentBrowserExtensions.cpp index d15616e..f21336c 100644 --- a/Source/BlueprintRetarget/Private/ContentBrowserExtensions.cpp +++ b/Source/BlueprintRetarget/Private/ContentBrowserExtensions.cpp @@ -1,4 +1,4 @@ -// Copyright 2015-2020 Piperift. All Rights Reserved. +// Copyright 2015-2019 Piperift. All Rights Reserved. #include "ContentBrowserExtensions.h" @@ -38,6 +38,8 @@ #define LOCTEXT_NAMESPACE "BlueprintRetarget" +DEFINE_LOG_CATEGORY_STATIC(LogBlueprintReparent, Log, All); + class FRetargetBlueprintFilter : public IClassViewerFilter { @@ -119,7 +121,7 @@ struct FRetargetClassExtension : public FContentBrowserSelectedAssetExtensionBas for (auto AssetIt = SelectedAssets.CreateConstIterator(); AssetIt; ++AssetIt) { const FAssetData& AssetData = *AssetIt; - if (TAssetPtr BP = Cast(AssetData.GetAsset())) + if (TSoftObjectPtr BP = Cast(AssetData.GetAsset())) { BPs.Add(BP.Get()); } @@ -157,9 +159,9 @@ struct FRetargetClassExtension : public FContentBrowserSelectedAssetExtensionBas Options.bShowObjectRootClass = true; Options.bIsBlueprintBaseOnly = true; // Only want blueprint base classes - Options.bShowUnloadedBlueprints = true; - - Options.ClassFilter = PrepareFilter(BPs); + Options.bShowUnloadedBlueprints = true; + + Options.ClassFilters.Add(PrepareFilter(BPs).ToSharedRef()); } // Temporally hide custom picker from ClassPicker @@ -265,7 +267,7 @@ struct FRetargetClassExtension : public FContentBrowserSelectedAssetExtensionBas void ReparentBlueprint(UBlueprint* Blueprint, UClass* ChosenClass) { check(Blueprint); - if ((Blueprint != nullptr) && (ChosenClass != nullptr) && (ChosenClass != Blueprint->ParentClass)) + if ((Blueprint != NULL) && (ChosenClass != NULL) && (ChosenClass != Blueprint->ParentClass)) { // Notify user, about common interfaces bool bReparent = true; @@ -373,7 +375,7 @@ struct FRetargetClassExtension : public FContentBrowserSelectedAssetExtensionBas void EnsureBlueprintIsUpToDate(UBlueprint* Blueprint) { - // Purge any nullptr graphs + // Purge any NULL graphs FBlueprintEditorUtils::PurgeNullGraphs(Blueprint); // Make sure the blueprint is cosmetically up to date @@ -467,7 +469,7 @@ class FBlueprintRetargetContentBrowserExtensions_Impl MenuBuilder.AddMenuEntry( LOCTEXT("RetargetClass", "Retarget invalid parent"), LOCTEXT("RetargetClass_Tooltip", "Reparents a blueprint's parent class (Useful when parent class is missing or invalid)"), - FSlateIcon(FEditorStyle::GetStyleSetName(), "ClassIcon.Note"), + FSlateIcon(FAppStyle::GetAppStyleSetName(), "ClassIcon.Note"), Action_RetargetClass, NAME_None, EUserInterfaceActionType::Button); @@ -503,7 +505,7 @@ class FBlueprintRetargetContentBrowserExtensions_Impl return ContentBrowserModule.GetAllAssetViewContextMenuExtenders(); } - static bool IsInvalidBlueprint(const TAssetPtr& BP) { + static bool IsInvalidBlueprint(const TSoftObjectPtr& BP) { return BP && (!BP->SkeletonGeneratedClass || !BP->GeneratedClass); } }; diff --git a/Source/BlueprintRetarget/Private/ContentBrowserExtensions.h b/Source/BlueprintRetarget/Private/ContentBrowserExtensions.h index 0b6c71c..634f6bf 100644 --- a/Source/BlueprintRetarget/Private/ContentBrowserExtensions.h +++ b/Source/BlueprintRetarget/Private/ContentBrowserExtensions.h @@ -1,4 +1,4 @@ -// Copyright 2015-2020 Piperift. All Rights Reserved. +// Copyright 2015-2019 Piperift. All Rights Reserved. #pragma once diff --git a/Source/BlueprintRetarget/Public/BlueprintRetarget.h b/Source/BlueprintRetarget/Public/BlueprintRetarget.h index 6e963f4..8bf478c 100644 --- a/Source/BlueprintRetarget/Public/BlueprintRetarget.h +++ b/Source/BlueprintRetarget/Public/BlueprintRetarget.h @@ -1,4 +1,4 @@ -// Copyright 2015-2020 Piperift. All Rights Reserved. +// Copyright 2015-2019 Piperift. All Rights Reserved. #pragma once