haxis/Source/UnrealProject/GUI/Submenus/SkillBrowserSubMenu.h

68 lines
1.6 KiB
C++

// Project Lab - NHTV Igad
#pragma once
#include "CharacterDependentSubMenus.h"
#include "MenuButton.h"
#include "SkillBrowserSubMenu.generated.h"
UCLASS()
class UNREALPROJECT_API USkillBrowserItemCategory : public UPanelUserWidget
{
GENERATED_BODY()
public:
void NativeConstruct() override;
UFUNCTION(BlueprintImplementableEvent)
void OnInit();
UPROPERTY(BlueprintReadOnly)
class UBaseSkillObject* skillObject;
UPanelWidget* itemContainer;
};
UCLASS()
class UNREALPROJECT_API USkillBrowserItem : public UMenuButton
{
GENERATED_BODY()
public:
void NativeConstruct() override;
void NativeTick(const FGeometry& MyGeometry, float InDeltaTime) override;
void Init(UAbilityInfo* info);
void NativeOnSelectionChanged(bool selected, bool controller) override;
virtual void NativeOnPressed(bool controllerInput) override;
UFUNCTION(BlueprintImplementableEvent)
void OnInit();
UPROPERTY(BlueprintReadOnly)
class USkillBrowserItemCategory* category;
UPROPERTY(BlueprintReadOnly)
class USkillTreeWidget* skillTree;
UPROPERTY(BlueprintReadOnly)
class UAbilityInfo* ability;
UPROPERTY(BlueprintReadOnly)
class UBaseSkillObject* skillObject;
private:
};
UCLASS()
class UNREALPROJECT_API USkillBrowserSubMenu : public UCharacterDependentSubMenu
{
GENERATED_BODY()
public:
void NativeConstruct() override;
UPROPERTY(EditDefaultsOnly)
TSubclassOf<USkillBrowserItem> itemClass;
UPROPERTY(EditDefaultsOnly)
TSubclassOf<USkillBrowserItemCategory> itemCategoryClass;
private:
UPanelWidget* m_skillItemContainer;
};