diff options
author | Felix Lange <fjl@twurst.com> | 2014-10-29 10:50:20 +0800 |
---|---|---|
committer | Felix Lange <fjl@twurst.com> | 2014-10-29 10:50:20 +0800 |
commit | 6b3f5fb82b0304f477a1c36b68b0d07232405aff (patch) | |
tree | a0d52b610b2876fcbcce8bb00e84ba81799d568d /cmd | |
parent | 5920aa7be6fb973c7cbae34c9d4af03665933c51 (diff) | |
download | go-tangerine-6b3f5fb82b0304f477a1c36b68b0d07232405aff.tar go-tangerine-6b3f5fb82b0304f477a1c36b68b0d07232405aff.tar.gz go-tangerine-6b3f5fb82b0304f477a1c36b68b0d07232405aff.tar.bz2 go-tangerine-6b3f5fb82b0304f477a1c36b68b0d07232405aff.tar.lz go-tangerine-6b3f5fb82b0304f477a1c36b68b0d07232405aff.tar.xz go-tangerine-6b3f5fb82b0304f477a1c36b68b0d07232405aff.tar.zst go-tangerine-6b3f5fb82b0304f477a1c36b68b0d07232405aff.zip |
cmd/mist, ethchain, ethminer: split TxEvent (#165)
Diffstat (limited to 'cmd')
-rw-r--r-- | cmd/mist/gui.go | 51 |
1 files changed, 25 insertions, 26 deletions
diff --git a/cmd/mist/gui.go b/cmd/mist/gui.go index 45a99659b..e6da33475 100644 --- a/cmd/mist/gui.go +++ b/cmd/mist/gui.go @@ -408,7 +408,8 @@ func (gui *Gui) update() { eth.ChainSyncEvent{}, eth.PeerListEvent{}, ethchain.NewBlockEvent{}, - ethchain.TxEvent{}, + ethchain.TxPreEvent{}, + ethchain.TxPostEvent{}, ethminer.Event{}, ) @@ -430,40 +431,38 @@ func (gui *Gui) update() { gui.setWalletValue(gui.eth.StateManager().CurrentState().GetAccount(gui.address()).Balance(), nil) } - case ethchain.TxEvent: + case ethchain.TxPreEvent: tx := ev.Tx - if ev.Type == ethchain.TxPre { - object := state.GetAccount(gui.address()) + object := state.GetAccount(gui.address()) - if bytes.Compare(tx.Sender(), gui.address()) == 0 { - unconfirmedFunds.Sub(unconfirmedFunds, tx.Value) - } else if bytes.Compare(tx.Recipient, gui.address()) == 0 { - unconfirmedFunds.Add(unconfirmedFunds, tx.Value) - } - - gui.setWalletValue(object.Balance(), unconfirmedFunds) - - gui.insertTransaction("pre", tx) + if bytes.Compare(tx.Sender(), gui.address()) == 0 { + unconfirmedFunds.Sub(unconfirmedFunds, tx.Value) + } else if bytes.Compare(tx.Recipient, gui.address()) == 0 { + unconfirmedFunds.Add(unconfirmedFunds, tx.Value) + } - } else if ev.Type == ethchain.TxPost { - object := state.GetAccount(gui.address()) - if bytes.Compare(tx.Sender(), gui.address()) == 0 { - object.SubAmount(tx.Value) + gui.setWalletValue(object.Balance(), unconfirmedFunds) + gui.insertTransaction("pre", tx) - //gui.getObjectByName("transactionView").Call("addTx", ethpipe.NewJSTx(tx), "send") - gui.txDb.Put(tx.Hash(), tx.RlpEncode()) - } else if bytes.Compare(tx.Recipient, gui.address()) == 0 { - object.AddAmount(tx.Value) + case ethchain.TxPostEvent: + tx := ev.Tx + object := state.GetAccount(gui.address()) - //gui.getObjectByName("transactionView").Call("addTx", ethpipe.NewJSTx(tx), "recv") - gui.txDb.Put(tx.Hash(), tx.RlpEncode()) - } + if bytes.Compare(tx.Sender(), gui.address()) == 0 { + object.SubAmount(tx.Value) - gui.setWalletValue(object.Balance(), nil) + //gui.getObjectByName("transactionView").Call("addTx", ethpipe.NewJSTx(tx), "send") + gui.txDb.Put(tx.Hash(), tx.RlpEncode()) + } else if bytes.Compare(tx.Recipient, gui.address()) == 0 { + object.AddAmount(tx.Value) - state.UpdateStateObject(object) + //gui.getObjectByName("transactionView").Call("addTx", ethpipe.NewJSTx(tx), "recv") + gui.txDb.Put(tx.Hash(), tx.RlpEncode()) } + gui.setWalletValue(object.Balance(), nil) + state.UpdateStateObject(object) + // case object: // gui.loadAddressBook() |