Duke's Big Numbers 1.0
C++ and Blueprint libraries for performing math, analysis, and formatting with really large numbers (>10e308).
Loading...
Searching...
No Matches
CustomGroupLabeler.h
1// Copyright (C)2023 Smiling Cat Entertainment, LTD. All Rights Reserved.
2
3#pragma once
4
5#include "CoreMinimal.h"
6#include "Inline.h"
7#include "GroupLabeler.h"
8#include "CustomGroupLabeler.generated.h"
9
19UCLASS()
20class DUKESBIGNUMBERS_API UCustomGroupLabeler : public UGroupLabeler
21{
22 GENERATED_BODY()
23public:
29
39 int OnAppendGroupLabel(int32 powerOfTen, FString& string) const override;
40
46 UFUNCTION(BlueprintPure, BlueprintInternalUseOnly, Category = "String|BigInteger")
47 TArray<FString> const GetGroupLabels() const;
48
54 UFUNCTION(BlueprintCallable, BlueprintInternalUseOnly, Category = "String|BigInteger")
55 void SetGroupLabels(TArray<FString> value);
56
57protected:
66 virtual void MapPowerToLabelIndex(int32 powerOfTen, int32& outIndex, int32& outRemainder) const;
67
68private:
72 UPROPERTY(BlueprintGetter = GetGroupLabels, BlueprintSetter = SetGroupLabels, Category = "String|BigInteger")
73 TArray<FString> GroupLabels;
74
75};
76
77// If conditional inlining is ON, include inlinable functions here.
78#if DBN_INLINE_ENABLED
79#include "CustomGroupLabeler.inl"
80#endif
Definition: CustomGroupLabeler.h:21
int OnAppendGroupLabel(int32 powerOfTen, FString &string) const override
Definition: GroupLabeler.h:19