Files
UnrealEngine/Engine/Source/Runtime/FriendsAndChat/Public/FriendsChatStyle.h
2025-05-18 13:04:45 +08:00

193 lines
6.1 KiB
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#pragma once
#include "CoreMinimal.h"
#include "UObject/NameTypes.h"
#include "Math/Color.h"
#include "UObject/ObjectMacros.h"
#include "Layout/Margin.h"
#include "Styling/SlateBrush.h"
#include "Styling/SlateWidgetStyle.h"
#include "Styling/SlateTypes.h"
#include "FriendsChatStyle.generated.h"
// Forward declarations
namespace EChatMessageType
{
enum Type : uint16;
}
/**
* Interface for the services manager.
*/
USTRUCT()
struct FRIENDSANDCHAT_API FFriendsChatStyle
: public FSlateWidgetStyle
{
GENERATED_USTRUCT_BODY()
// Default Constructor
FFriendsChatStyle()
: TimeStampOpacity(0.5f)
, ChatEntryPadding(0)
, ChatEntryHeight(55)
, FriendActionPadding(20, 15)
, FriendActionHeaderPadding(20)
, FriendActionStatusMargin(20, 0, 0, 0)
{
}
// Default Destructor
virtual ~FFriendsChatStyle() { }
/**
* Override widget style function.
*/
virtual void GetResources( TArray< const FSlateBrush* >& OutBrushes ) const override { }
// Holds the widget type name
static const FName TypeName;
/**
* Get the type name.
* @return the type name
*/
virtual const FName GetTypeName() const override { return TypeName; };
/**
* Get the default style.
* @return the default style
*/
static const FFriendsChatStyle& GetDefault();
/** Text Style */
UPROPERTY(EditAnywhere, Category=Appearance)
FTextBlockStyle TextStyle;
FFriendsChatStyle& SetTextStyle(const FTextBlockStyle& InTextStyle);
/** Time Stamp Text Style */
UPROPERTY(EditAnywhere, Category=Appearance)
FTextBlockStyle TimeStampTextStyle;
FFriendsChatStyle& SetTimeStampTextStyle(const FTextBlockStyle& InTextStyle);
UPROPERTY(EditAnywhere, Category = Appearance)
float TimeStampOpacity;
FFriendsChatStyle& SetTimestampOpacity(float InOpacity);
UPROPERTY(EditAnywhere, Category=Appearance)
FLinearColor DefaultChatColor;
FFriendsChatStyle& SetDefaultChatColor(const FLinearColor& InFontColor);
UPROPERTY(EditAnywhere, Category=Appearance)
FLinearColor WhisperChatColor;
FFriendsChatStyle& SetWhisplerChatColor(const FLinearColor& InFontColor);
UPROPERTY(EditAnywhere, Category = Appearance)
FLinearColor GlobalChatColor;
FFriendsChatStyle& SetGlobalChatColor(const FLinearColor& InFontColor);
UPROPERTY(EditAnywhere, Category = Appearance)
FLinearColor FounderChatColor;
FFriendsChatStyle& SetFounderChatColor(const FLinearColor& InFontColor);
UPROPERTY(EditAnywhere, Category=Appearance)
FLinearColor GameChatColor;
FFriendsChatStyle& SetGameChatColor(const FLinearColor& InFontColor);
UPROPERTY(EditAnywhere, Category=Appearance)
FLinearColor TeamChatColor;
FFriendsChatStyle& SetTeamChatColor(const FLinearColor& InFontColor);
UPROPERTY(EditAnywhere, Category = Appearance)
FLinearColor PartyChatColor;
FFriendsChatStyle& SetPartyChatColor(const FLinearColor& InFontColor);
UPROPERTY(EditAnywhere, Category=Appearance)
FLinearColor AdminChatColor;
FFriendsChatStyle& SetAdminChatColor(const FLinearColor& InFontColor);
UPROPERTY(EditAnywhere, Category=Appearance)
FLinearColor GameAdminChatColor;
FFriendsChatStyle& SetGameAdminChatColor(const FLinearColor& InFontColor);
UPROPERTY(EditAnywhere, Category = Appearance)
FLinearColor AddedItemChatColor;
FFriendsChatStyle& SetAddedItemChatColor(const FLinearColor& InFontColor);
UPROPERTY(EditAnywhere, Category = Appearance)
FLinearColor CompletedItemChatColor;
FFriendsChatStyle& SetCompletedItemChatColor(const FLinearColor& InFontColor);
UPROPERTY(EditAnywhere, Category = Appearance)
FLinearColor DiscardedItemChatColor;
FFriendsChatStyle& SetDiscardedItemChatColor(const FLinearColor& InFontColor);
UPROPERTY(EditAnywhere, Category=Appearance)
FLinearColor WhisperHyperlinkChatColor;
FFriendsChatStyle& SetWhisplerHyperlinkChatColor(const FLinearColor& InFontColor);
UPROPERTY(EditAnywhere, Category = Appearance)
FLinearColor GlobalHyperlinkChatColor;
FFriendsChatStyle& SetGlobalHyperlinkChatColor(const FLinearColor& InFontColor);
UPROPERTY(EditAnywhere, Category = Appearance)
FLinearColor FounderHyperlinkChatColor;
FFriendsChatStyle& SetFounderHyperlinkChatColor(const FLinearColor& InFontColor);
UPROPERTY(EditAnywhere, Category=Appearance)
FLinearColor GameHyperlinkChatColor;
FFriendsChatStyle& SetGameHyperlinkChatColor(const FLinearColor& InFontColor);
UPROPERTY(EditAnywhere, Category=Appearance)
FLinearColor TeamHyperlinkChatColor;
FFriendsChatStyle& SetTeamHyperlinkChatColor(const FLinearColor& InFontColor);
UPROPERTY(EditAnywhere, Category = Appearance)
FLinearColor PartyHyperlinkChatColor;
FFriendsChatStyle& SetPartyHyperlinkChatColor(const FLinearColor& InFontColor);
UPROPERTY(EditAnywhere, Category = Appearance)
FLinearColor EnemyColor;
FFriendsChatStyle& SetEnemyColor(const FLinearColor& InFontColor);
UPROPERTY(EditAnywhere, Category = Appearance)
FLinearColor FriendlyColor;
FFriendsChatStyle& SetFriendlyColor(const FLinearColor& InFontColor);
UPROPERTY(EditAnywhere, Category = Appearance)
FEditableTextBoxStyle ChatEntryTextStyle;
FFriendsChatStyle& SetChatEntryTextStyle(const FEditableTextBoxStyle& InEditableTextStyle);
UPROPERTY(EditAnywhere, Category = Appearance)
FEditableTextBoxStyle ChatDisplayTextStyle;
FFriendsChatStyle& SetChatDisplayTextStyle(const FEditableTextBoxStyle& InEditableTextStyle);
UPROPERTY(EditAnywhere, Category = Appearance)
FScrollBoxStyle ScrollBorderStyle;
FFriendsChatStyle& SetScrollBorderStyle(const FScrollBoxStyle& InScrollBorderStyle);
UPROPERTY(EditAnywhere, Category = Appearance)
FSlateBrush MessageNotificationBrush;
FFriendsChatStyle& SetMessageNotificationBrush(const FSlateBrush& Brush);
UPROPERTY(EditAnywhere, Category = Appearance)
FMargin ChatEntryPadding;
FFriendsChatStyle& SetChatChannelPadding(const FMargin& Value);
UPROPERTY(EditAnywhere, Category = Appearance)
float ChatEntryHeight;
FFriendsChatStyle& SetChatEntryHeight(float Value);
UPROPERTY(EditAnywhere, Category = Appearance)
FMargin FriendActionPadding;
UPROPERTY(EditAnywhere, Category = Appearance)
FMargin FriendActionHeaderPadding;
UPROPERTY(EditAnywhere, Category = Appearance)
FMargin FriendActionStatusMargin;
};