VR_RageRoom/Plugins/UEGitPlugin/Source/GitSourceControl/Private/GitSourceControlChangelistState.h
2025-04-14 14:47:22 +03:00

85 lines
2.5 KiB
C++

#pragma once
#include "GitSourceControlChangelist.h"
#include "ISourceControlChangelistState.h"
#include "ISourceControlState.h"
class FGitSourceControlChangelistState : public ISourceControlChangelistState
{
public:
explicit FGitSourceControlChangelistState(const FGitSourceControlChangelist& InChangelist,
const FString& InDescription = FString())
: Changelist(InChangelist)
, Description(InDescription)
{
}
explicit FGitSourceControlChangelistState(FGitSourceControlChangelist&& InChangelist,
FString&& InDescription)
: Changelist(MoveTemp(InChangelist))
, Description(MoveTemp(InDescription))
{
}
/**
* Get the name of the icon graphic we should use to display the state in a UI.
* @returns the name of the icon to display
*/
virtual FName GetIconName() const override;
/**
* Get the name of the small icon graphic we should use to display the state in a UI.
* @returns the name of the icon to display
*/
virtual FName GetSmallIconName() const override;
/**
* Get a text representation of the state
* @returns the text to display for this state
*/
virtual FText GetDisplayText() const override;
/**
* Get a text representation of the state
* @returns the text to display for this state
*/
virtual FText GetDescriptionText() const override;
/**
* Get a tooltip to describe this state
* @returns the text to display for this states tooltip
*/
virtual FText GetDisplayTooltip() const override;
/**
* Get the timestamp of the last update that was made to this state.
* @returns the timestamp of the last update
*/
virtual const FDateTime& GetTimeStamp() const override;
#if ENGINE_MAJOR_VERSION == 5 && ENGINE_MINOR_VERSION >= 4
virtual const TArray<FSourceControlStateRef> GetFilesStates() const override;
virtual int32 GetFilesStatesNum() const override;
virtual const TArray<FSourceControlStateRef> GetShelvedFilesStates() const override;
virtual int32 GetShelvedFilesStatesNum() const override;
#else
virtual const TArray<FSourceControlStateRef>& GetFilesStates() const override;
virtual const TArray<FSourceControlStateRef>& GetShelvedFilesStates() const override;
#endif
virtual FSourceControlChangelistRef GetChangelist() const override;
public:
FGitSourceControlChangelist Changelist;
FString Description;
TArray<FSourceControlStateRef> Files;
TArray<FSourceControlStateRef> ShelvedFiles;
/** The timestamp of the last update */
FDateTime TimeStamp;
};