Files
UnrealEngineUWP/Engine/Source/Developer/FriendsAndChat/Private/Models/ChatItemViewModel.h
Nicholas Davies 0b18eef244 [INTEGRATE] merge ue4-launcheDev->ue cl 2505085 & Cl 2505126
#jira OPP-3150 Chat options appear broken in Main after Launcher multi window updates

[CL 2506482 by Nicholas Davies in Main branch]
2015-04-09 04:02:47 -04:00

39 lines
1.2 KiB
C++

// Copyright 1998-2015 Epic Games, Inc. All Rights Reserved.
#pragma once
struct FFriendChatMessage;
class FChatViewModel;
class FChatItemViewModel
: public TSharedFromThis<FChatItemViewModel>
{
public:
virtual ~FChatItemViewModel() {}
virtual FText GetMessage() const = 0;
virtual const EChatMessageType::Type GetMessageType() const =0;
virtual FText GetMessageTimeText() const = 0;
virtual FDateTime GetMessageTime() const = 0;
virtual void AddMessage(const TSharedRef<FFriendChatMessage>& ChatMessage) = 0;
virtual FText GetSenderName() const = 0;
virtual const TSharedPtr<FUniqueNetId> GetSenderID() const = 0;
virtual FText GetRecipientName() const = 0;
virtual const TSharedPtr<FUniqueNetId> GetRecipientID() const = 0;
virtual const bool IsFromSelf() const = 0;
DECLARE_EVENT_OneParam(FChatItemViewModel, FChangedEvent, const TSharedRef<FChatItemViewModel>&)
virtual FChangedEvent& OnChanged() = 0;
};
/**
* Creates the implementation for an ChatItemViewModel.
*
* @return the newly created ChatItemViewModel implementation.
*/
FACTORY(TSharedRef< FChatItemViewModel >, FChatItemViewModel,
const TSharedRef<FFriendChatMessage>& FFriendChatMessage);