public FriendViewModel(int friendNumber)
        {
            FriendNumber = friendNumber;

            Conversation = new ConversationViewModel(this);
            FileTransfers = new FileTransfersViewModel(friendNumber);
            RecentMessages = new RecentMessagesPerUserViewModel(friendNumber);
            Call = new CallViewModel(friendNumber);

            Name = ToxModel.Instance.GetFriendName(friendNumber);
            if (Name == String.Empty)
            {
                Name = ToxModel.Instance.GetFriendPublicKey(friendNumber).ToString().Substring(0, 10);
            }

            StatusMessage = ToxModel.Instance.GetFriendStatusMessage(friendNumber);
            if (StatusMessage == String.Empty)
            {
                StatusMessage = "Friend request sent.";
            }

            SetFriendStatus(ToxModel.Instance.GetFriendStatus(friendNumber));
            IsConnected = ToxModel.Instance.IsFriendOnline(friendNumber);

            AvatarManager.Instance.FriendAvatarChanged += FriendAvatarChangedHandler;

            ToxModel.Instance.FriendNameChanged += FriendNameChangedHandler;
            ToxModel.Instance.FriendStatusMessageChanged += FriendStatusMessageChangedHandler;
            ToxModel.Instance.FriendStatusChanged += FriendStatusChangedHandler;
            ToxModel.Instance.FriendConnectionStatusChanged += FriendConnectionStatusChangedHandler;
        }
 private async void FileTransferBlockLoaded(object sender, RoutedEventArgs e)
 {
     _viewModel = DataContext as FileTransfersViewModel;
     VisualStateManager.GoToState(this, _viewModel.VisualStates.BlockState.ToString(), true);
     _viewModel.Transfers.CollectionChanged += TransfersCollectionChangedHandler;
     await SetAddDeleteThemeTransitionForTransferRibbons();
 }
 public OneFileTransferViewModel(FileTransfersViewModel fileTransfersViewModel,
     OneFileTransferModel oneFileTransferModel)
 {
     _fileTransfersViewModel = fileTransfersViewModel;
     _oneFileTransferModel = oneFileTransferModel;
     _oneFileTransferModel.PropertyChanged += ModelPropertyChangedHandler;
     _progressUpdater = new ProgressUpdater(this);
 }
Beispiel #4
0
 public OneFileTransferViewModel(FileTransfersViewModel fileTransfersViewModel,
                                 OneFileTransferModel oneFileTransferModel)
 {
     _fileTransfersViewModel = fileTransfersViewModel;
     _oneFileTransferModel   = oneFileTransferModel;
     _oneFileTransferModel.PropertyChanged += ModelPropertyChangedHandler;
     _progressUpdater = new ProgressUpdater(this);
 }