public OverviewViewModel(IWalletRepository walletRepository, IAccountLedgerRunner accountLedgerRunner, IAccountLedgerRepository accountLedgerRepository, IContactRepository contactRepository) { _walletRepository = walletRepository; _accountLedgerRepository = accountLedgerRepository; _contactRepository = contactRepository; InitUiProperties(); MessengerInstance.Register <LedgerEntryMessage>(this, (message) => { DispatcherHelper.CheckBeginInvokeOnUI(() => { if (message.Action == LedgerEntryMessageAction.Added) { InsertLedgerEntry(message.LedgerEntry); } else if (message.Action == LedgerEntryMessageAction.ConfirmationUpdated) { var existingLedgerEntry = LedgerEntries.Single(t => t.Equals(message.LedgerEntry)); existingLedgerEntry.IsConfirmed = message.LedgerEntry.IsConfirmed; } else if (message.Action == LedgerEntryMessageAction.Removed) { LedgerEntries.Remove(LedgerEntries.Single(t => t.Equals(message.LedgerEntry))); } }); }); MessengerInstance.Register <BalanceUpdatedMessage>(this, (message) => { DispatcherHelper.CheckBeginInvokeOnUI(() => NxtBalance = message.NqtBalance.NqtToNxt()); }); MessengerInstance.Register <SecretPhraseResetMessage>(this, (message) => { InitUiProperties(); LedgerEntries.Clear(); }); LedgerEntries = new ObservableCollection <LedgerEntry>(); LoadLedgerEntriesFromRepository(); }
public ToastManager(IWalletRepository walletRepository, IAccountLedgerRunner accountLedgerRunner) { _walletRepository = walletRepository; _accountLedgerRunner = accountLedgerRunner; }