/// <summary> /// Initializes a new instance of chat view model. /// </summary> /// <param name="chatService">a chat service that should be used</param> /// <param name="connector">a connector that provides information about opponents stone removal acceptance</param> public ChatViewModel(IChatService chatService, IRemoteConnector connector) { _chatService = chatService; _chatService.NewMessageReceived += ChatService_NewMessageReceived; connector.ServerSaysAPlayerIsDone += Connector_ServerSaysAPlayerIsDone; Messages = new ObservableCollection <ChatMessage>(chatService.Messages); }
internal ChatService(IRemoteConnector connector) { _connector = connector; _connector.NewChatMessageReceived += _connector_NewChatMessageReceived; Messages = new ReadOnlyCollection <ChatMessage>(_messages); }