public MessageListViewModel(int friendId , IMessageItemModelFactory messageItemModelFactory , IUserInfoRepository userInfoRepository , IFriendsRepository friendsRepository , IDialogMessagesRepository dialogMessagesRepository , ILoadingIndicatorViewModel loadingIndicatorModel , ILanguageRepository languageRepository , ILogger logger) : base(languageRepository, logger) { _messageItemModelFactory = messageItemModelFactory; FriendId = friendId; MessageViews = new BindableCollection<IMessageBaseItemViewModel>(); LoadingIndicatorModel = loadingIndicatorModel; if (userInfoRepository.NotEmpty()) { UserFirstName = userInfoRepository.Data.FirstName; } if (friendsRepository.NotEmpty()) { FriendFirstName = friendsRepository.Data.FirstOrDefault(x => x.VkId == friendId)?.FirstName; } dialogMessagesRepository.AddingRange += DialogMessagesAddingRange; dialogMessagesRepository.AddedRange += DialogMessagesAddedRange; dialogMessagesRepository.AddRangeFailed += DialogMessagesAddRangeFailed; }
public MessageInputViewModel(int friendId , ISendMessageToVk sendMessageToVk , ISessionInfoRepository sessionInfoRepository , ILoadingIndicatorViewModel loadingIndicatorModel , ILanguageRepository languageRepository , ILogger logger) : base(languageRepository, logger) { _sendMessageToVk = sendMessageToVk; _sessionInfoRepository = sessionInfoRepository; FriendId = friendId; LoadingIndicatorModel = loadingIndicatorModel; }
public FriendListViewModel(bool displayOnlineStatuses , IFriendsRepository friendsRepository , IFriendsAvatarsRepository friendsAvatarsRepository , IFriendItemModelFactory friendItemViewModelFactory , ILoadingIndicatorViewModel loadingIndicatorViewModel , ILanguageRepository languageRepository , ILogger logger) : base(languageRepository, logger) { _friendItemViewModelFactory = friendItemViewModelFactory; _friendsAvatarsRepository = friendsAvatarsRepository; _displayOnlineStatuses = displayOnlineStatuses; FriendViews = new BindableCollection<IFriendItemViewModel>(); LoadingIndicatorModel = loadingIndicatorViewModel; friendsAvatarsRepository.Adding += FriendsAvatarsRepositoryAdding; friendsAvatarsRepository.Added += FriendsAvatarsRepositoryAdded; friendsAvatarsRepository.AddFailed += FriendsAvatarsRepositoryAddFailed; BindLoadingIndicatorToCollectionRepository<IFriendsRepository, IFriend>(loadingIndicatorViewModel, friendsRepository); }
public FriendItemViewModel(IFriend friend , bool displayOnlineStatus , ILoadingIndicatorViewModel loadingIndicatorViewModel , ILanguageRepository languageRepository , ILogger logger , IEventAggregator eventAggregator) : base(languageRepository, logger, eventAggregator) { if (friend == null) throw new ArgumentNullException(nameof(friend)); _friend = friend; _displayOnlineStatus = displayOnlineStatus; LoadingIndicatorModel = loadingIndicatorViewModel; LoadingIndicatorModel.ImageScale = 0.5; UpdateText(); }