void UpdateData(WalletForms wf)
{
var w = wf.Wallet;
int i = 0;
foreach (var alert in w.Alerts) {
string comment = alert.Comment;
if (!AllAlerts.ContainsKey(comment)) {
AllAlerts.Add(comment, 1);
WalletEvents.Add(new WalletEvent() { Timestamp = alert.UntilTimestamp, Comment = comment });
}
}
foreach (var tx in w.Transactions) {
if (!AllTxes.ContainsKey(tx)) {
AllTxes.Add(tx, null);
var addr = tx.Address;
try {
decimal amount = tx.Amount;
string s;
if (amount > 0)
s = string.Format("{0} {1} received to our ", amount, w.CurrencySymbol);
else
s = string.Format("{0} {1} sent to", -amount, w.CurrencySymbol);
s += string.Format(" address {0} {1} {2}", addr.Value, addr.Comment, tx.Comment);
WalletEvents.Add(new WalletEvent() { Timestamp = tx.Timestamp, Comment = s });
if (++i > 10)
break;
}
finally {
// Marshal.FinalReleaseComObject(addr);
}
}
}
if (wf.FormTransactions != null)
wf.FormTransactions.CtlTxes.UpdateTransactions();
}