Space Plunder
Loading...
Searching...
No Matches
ULeaderboardWidget Class Reference

#include <LeaderboardWidget.h>

Inheritance diagram for ULeaderboardWidget:

Public Member Functions

 ULeaderboardWidget (const FObjectInitializer &ObjectInitializer)
 
void CreateLeaderboard (const FLeaderboardData &Data)
 
void SetLeaderboardData (const TArray< FSteamLeaderboardEntry > &LeaderboardEntries)
 
bool GetCreateIfNotFound () const
 
FString GetLeaderboardName () const
 

Protected Member Functions

virtual bool Initialize () override
 
void OnLeaderboardDataSet ()
 

Protected Attributes

FLeaderboardData LeaderboardData
 
class UTextBlock * NameTextBlock = nullptr
 
UButton * SortButton = nullptr
 
class UPanelWidget * LeaderboardPanel = nullptr
 

Private Attributes

TSubclassOf< UUserWidget > LeaderboardEntryClass = nullptr
 

Constructor & Destructor Documentation

◆ ULeaderboardWidget()

ULeaderboardWidget::ULeaderboardWidget ( const FObjectInitializer & ObjectInitializer)
explicit
10 :Super(ObjectInitializer)
11{
12 const ConstructorHelpers::FClassFinder<UUserWidget> LeaderboardEntry(TEXT("/StatsIntegration/Widgets/WBP_LeaderboardEntry"));
13 if (!ensure(LeaderboardEntry.Class != nullptr)) return;
14 LeaderboardEntryClass = LeaderboardEntry.Class;
15}
TSubclassOf< UUserWidget > LeaderboardEntryClass
Definition LeaderboardWidget.h:53

Member Function Documentation

◆ CreateLeaderboard()

void ULeaderboardWidget::CreateLeaderboard ( const FLeaderboardData & Data)
27{
28 LeaderboardData = Data;
29 NameTextBlock->SetText(FText::FromString(Data.LeaderboardName));
31}
Definition LeaderboardData.h:119
class UTextBlock * NameTextBlock
Definition LeaderboardWidget.h:44
void OnLeaderboardDataSet()
FString LeaderboardName
Definition LeaderboardData.h:95

◆ GetCreateIfNotFound()

bool ULeaderboardWidget::GetCreateIfNotFound ( ) const
47{
48 return LeaderboardData.bCreateIfNotFound;
49}

◆ GetLeaderboardName()

FString ULeaderboardWidget::GetLeaderboardName ( ) const
52{
53 return LeaderboardData.LeaderboardName;
54}

◆ Initialize()

bool ULeaderboardWidget::Initialize ( )
overrideprotectedvirtual
18{
19 const bool bSuccess = Super::Initialize();
20 if (!ensure(LeaderboardPanel != nullptr)) return false;
21 if (!ensure(NameTextBlock != nullptr)) return false;
22 if(!bSuccess) return false;
23 return true;
24}
class UPanelWidget * LeaderboardPanel
Definition LeaderboardWidget.h:49

◆ OnLeaderboardDataSet()

void ULeaderboardWidget::OnLeaderboardDataSet ( )
protected

◆ SetLeaderboardData()

void ULeaderboardWidget::SetLeaderboardData ( const TArray< FSteamLeaderboardEntry > & LeaderboardEntries)
34{
35 if(LeaderboardEntryClass == nullptr){return;}
36 LeaderboardPanel->ClearChildren();
37 for(const auto LeaderboardEntry : LeaderboardEntries)
38 {
39 ULeaderboardEntryWidget* EntryWidget = CreateWidget<ULeaderboardEntryWidget>(GetOwningPlayer(), LeaderboardEntryClass);
40 if(EntryWidget == nullptr){continue;}
41 EntryWidget->SetLeaderboardEntry(LeaderboardEntry, LeaderboardData.AvatarSize);
42 LeaderboardPanel->AddChild(EntryWidget);
43 }
44}
Definition LeaderboardEntryWidget.h:17
void SetLeaderboardEntry(const FSteamLeaderboardEntry &LeaderboardEntry, const ESteamAvatarSize AvatarSize)
Definition LeaderboardEntryWidget.cpp:26

Member Data Documentation

◆ LeaderboardData

FLeaderboardData ULeaderboardWidget::LeaderboardData
protected

◆ LeaderboardEntryClass

TSubclassOf<UUserWidget> ULeaderboardWidget::LeaderboardEntryClass = nullptr
private

◆ LeaderboardPanel

class UPanelWidget* ULeaderboardWidget::LeaderboardPanel = nullptr
protected

◆ NameTextBlock

class UTextBlock* ULeaderboardWidget::NameTextBlock = nullptr
protected

◆ SortButton

UButton* ULeaderboardWidget::SortButton = nullptr
protected

The documentation for this class was generated from the following files: