You've already forked UnrealEngineUWP
mirror of
https://github.com/izzy2lost/UnrealEngineUWP.git
synced 2026-03-26 18:15:20 -07:00
#rb simon.therriault #jira UETOOL-4463 #preflight 62424a85c61d8a458f223a59 [CL 19540648 by George Rolfe in ue5-main branch]
60 lines
2.5 KiB
C++
60 lines
2.5 KiB
C++
// Copyright Epic Games, Inc. All Rights Reserved.
|
|
|
|
#pragma once
|
|
|
|
#include "CoreMinimal.h"
|
|
#include "IPluginWizardDefinition.h"
|
|
|
|
/**
|
|
* New plugin wizard definition used by PluginBrowser
|
|
*/
|
|
class FWebAPIPluginWizardDefinition : public IPluginWizardDefinition
|
|
{
|
|
public:
|
|
FWebAPIPluginWizardDefinition(bool bIsContentOnlyProject = false);
|
|
|
|
// Begin IPluginWizardDefinition interface
|
|
virtual const TArray<TSharedRef<FPluginTemplateDescription>>& GetTemplatesSource() const override;
|
|
virtual void OnTemplateSelectionChanged(TSharedPtr<FPluginTemplateDescription> InSelectedItem, ESelectInfo::Type SelectInfo) override;
|
|
virtual TSharedPtr<FPluginTemplateDescription> GetSelectedTemplate() const override;
|
|
virtual void ClearTemplateSelection() override;
|
|
virtual bool HasValidTemplateSelection() const override;
|
|
|
|
virtual bool CanShowOnStartup() const override { return false; }
|
|
virtual bool HasModules() const override;
|
|
virtual bool IsMod() const override;
|
|
virtual void OnShowOnStartupCheckboxChanged(ECheckBoxState CheckBoxState) override {}
|
|
virtual ECheckBoxState GetShowOnStartupCheckBoxState() const override { return ECheckBoxState::Undetermined; }
|
|
virtual TSharedPtr<class SWidget> GetCustomHeaderWidget() override { return nullptr; }
|
|
virtual FText GetInstructions() const override;
|
|
|
|
virtual bool GetPluginIconPath(FString& OutIconPath) const override;
|
|
virtual EHostType::Type GetPluginModuleDescriptor() const override;
|
|
virtual ELoadingPhase::Type GetPluginLoadingPhase() const override;
|
|
virtual bool GetTemplateIconPath(TSharedRef<FPluginTemplateDescription> InTemplate, FString& OutIconPath) const override;
|
|
virtual FString GetPluginFolderPath() const override;
|
|
virtual TArray<FString> GetFoldersForSelection() const override;
|
|
virtual void PluginCreated(const FString& PluginName, bool bWasSuccessful) const override;
|
|
// End IPluginWizardDefinition interface
|
|
|
|
private:
|
|
/** Creates the templates that can be used by the plugin manager to generate the plugin */
|
|
void PopulateTemplatesSource();
|
|
|
|
/** Gets the folder for the specified template. */
|
|
FString GetFolderForTemplate(TSharedRef<FPluginTemplateDescription> InTemplate) const;
|
|
|
|
private:
|
|
/** The templates available to this definition */
|
|
TArray<TSharedRef<FPluginTemplateDescription>> TemplateDefinitions;
|
|
|
|
/** The currently selected template definition */
|
|
TSharedPtr<FPluginTemplateDescription> CurrentTemplateDefinition;
|
|
|
|
/** Base directory of the plugin templates */
|
|
FString PluginBaseDir;
|
|
|
|
/** If true, this definition is for a project that can only contain content */
|
|
bool bIsContentOnlyProject;
|
|
};
|