FNameのプロパティの表示をカスタマイズする機能をプラグインで提供したい

FName(FString)のプロパティは

UPROPERTY(EditDefaultOnly, meta=(GetOptions="MyGetOptions"))
FName Key; // ドロップダウン表示になる

以上のようにGetOptionsで関数名を指定するとドロップダウンで表示されるようになります。

これと同じように、以下のようにmeta指定子で特定のキーワードを指定すると、FNameのプロパティの表示が変化する機能をプラグインで提供することは可能でしょうか?

UPROPERTY(EditDefaultOnly, meta=(MyCustomDetail))
FName Key; // プロパティの表示を変化させたい(ドロップダウン、トグル、等...)

以下のコードのように、クラスのDetailsをカスタマイズするのと同様の手順でFName用の​IPropertyTypeCustomizationを実装して設定したのですが、表示が変化しなかったため、ご質問させていただきました。

void FNameExtentionModule::StartupModule()
{
    FPropertyEditorModule& PropertyModule = FModuleManager::LoadModuleChecked<FPropertyEditorModule>("PropertyEditor");
    PropertyModule.RegisterCustomPropertyTypeLayout("Name", FOnGetPropertyTypeCustomizationInstance::CreateStatic(&NameExtentionDetail::MakeInstance));
}​

​ご確認よろしくお願いします。

[Attachment Removed]

お世話になっております。

アプローチは合っているかと思います。​

こちらの点を確認できますか?​

  • プラグイン/モジュールがEditorModuleであること
  • PropertyEditor が依存モジュールに追加されていること
  • 登録後に NotifyCustomizationModuleChanged() を呼び出していること
  • 他のモジュールがあなたの後でNameのカスタマイズを上書きしていないこと(後に登録されたものが優先される)
  • 今見せていただいたコードが実際に呼び出されていること(ログやブレークポイントで確認する)

​お手数ですが、よろしくお願いします。

[Attachment Removed]

お世話になっております。

トラッキングのため、本件をクローズさせていただきます。

もし追加質問があればいつでも再オープンしてください。

お手数ですが、よろしくお願いします。

[Attachment Removed]

お世話になっております。

本件に関しまして、

void FNameExtentionModule::StartupModule()
{
    FPropertyEditorModule& PropertyModule = FModuleManager::LoadModuleChecked<FPropertyEditorModule>("PropertyEditor");
    PropertyModule.RegisterCustomPropertyTypeLayout("NameProperty", FOnGetPropertyTypeCustomizationInstance::CreateStatic(&NameExtentionDetail::MakeInstance));
}

とすればFNameのプロパティ表示をカスタマイズすることができました。RegisterCustomPropertyTypeLayoutのコメントに記載されていましたが、structやenumではないためFNameではなくFNamePropertyに対しIPropertyTypeCustomizationを適用すれば良かったようです。

よろしくお願いします。

[Attachment Removed]

お世話になっております。

解決できてよかったです!

引き続きよろしくお願いします。

[Attachment Removed]