コード例 #1
0
        public ChatDetailsHeaderViewModel(
            ChatSummaryModel chatModel,
            IUploadImageService uploadImageService,
            IChatsListManager chatsListManager)
        {
            _chatModel          = chatModel;
            _uploadImageService = uploadImageService;
            _chatsListManager   = chatsListManager;

            ChatName  = chatModel.Name;
            AvatarUrl = chatModel.PhotoUrl;
            IsMuted   = chatModel.IsMuted;

            StartEditingCommand            = new RelayCommand(StartEditing);
            ChangeMuteNotificationsCommand = new RelayCommand(() => ChangeMuteNotificationsAsync().FireAndForget());
            SaveCommand = new RelayCommand <Func <(Task <Stream>, string)> >(x => SaveAsync(x).FireAndForget());
        }
コード例 #2
0
 public CreateChatViewModel(
     IChatsListManager chatsListManager,
     IChatService chatService,
     IPageNavigationService pageNavigationService,
     IChatLocalizedStrings localizedStrings,
     IFormatService formatService,
     IUploadImageService uploadImageService,
     IDialogsService dialogsService)
 {
     _chatsListManager      = chatsListManager;
     _chatService           = chatService;
     _pageNavigationService = pageNavigationService;
     _formatService         = formatService;
     _uploadImageService    = uploadImageService;
     _dialogsService        = dialogsService;
     LocalizedStrings       = localizedStrings;
 }
コード例 #3
0
        public ChatsListViewModel(
            IPageNavigationService pageNavigationService,
            IDialogsService dialogsService,
            IChatLocalizedStrings localizedStrings,
            IChatsListManager chatsListManager,
            ConnectionStatusViewModel connectionStatusViewModel)
        {
            _pageNavigationService = pageNavigationService;
            _dialogsService        = dialogsService;
            _chatsListManager      = chatsListManager;

            LocalizedStrings          = localizedStrings;
            ConnectionStatusViewModel = connectionStatusViewModel;

            Chats = _chatsListManager.ChatsCollection;

            CreateChatCommand = new RelayCommand(CreateChat);
            LeaveChatCommand  = new AsyncCommand <ChatSummaryViewModel>(LeaveChatAsync);
            DeleteChatCommand = new AsyncCommand <ChatSummaryViewModel>(DeleteChatAsync);
        }
コード例 #4
0
        public NewChatViewModel(
            IChatService chatService,
            IChatsListManager chatsListManager,
            IChatLocalizedStrings localizedStrings,
            IPageNavigationService pageNavigationService,
            ILogManager logManager)
        {
            _searchContactsStrategy = new CreateChatSearchContactsStrategy(chatService);
            _chatsListManager       = chatsListManager;
            LocalizedStrings        = localizedStrings;
            _pageNavigationService  = pageNavigationService;
            _logger         = logManager.GetLogger <NewChatViewModel>();
            NoResultVisible = false;

            PaginationViewModel = new PaginationViewModel <ChatUserViewModel, ChatUserModel>(
                new ChatUserViewModelFactory(),
                SearchLoader,
                SearchFilter,
                DefaultSearchResultsPageSize);
            SearchCommand             = new AsyncCommand(DoSearch);
            CancelCommand             = new RelayCommand(GoBack);
            CreateGroupChatCommand    = new RelayCommand(() => _pageNavigationService.NavigateToViewModel <CreateChatViewModel>());
            CreatePersonalChatCommand = new RelayCommand <ChatUserViewModel>(CreatePersonalChat);
        }