Refactored to reactor. Fixes #42

pull/84/head
obscuren 11 years ago
parent 9ba3c6d1af
commit 3a2bddc160
  1. 13
      ethereal/ui/gui.go

@ -178,13 +178,14 @@ func (gui *Gui) setWalletValue(amount, unconfirmedFunds *big.Int) {
// Simple go routine function that updates the list of peers in the GUI // Simple go routine function that updates the list of peers in the GUI
func (gui *Gui) update() { func (gui *Gui) update() {
blockChan := make(chan ethutil.React, 1)
reactor := gui.eth.Reactor() reactor := gui.eth.Reactor()
reactor.Subscribe("newBlock", blockChan) blockChan := make(chan ethutil.React, 1)
txChan := make(chan ethutil.React, 1)
txChan := make(chan ethchain.TxMsg, 1) reactor.Subscribe("newBlock", blockChan)
gui.eth.TxPool().Subscribe(txChan) reactor.Subscribe("newTx:pre", txChan)
reactor.Subscribe("newTx:post", txChan)
state := gui.eth.StateManager().TransState() state := gui.eth.StateManager().TransState()
@ -200,9 +201,9 @@ func (gui *Gui) update() {
} }
case txMsg := <-txChan: case txMsg := <-txChan:
tx := txMsg.Tx tx := txMsg.Resource.(*ethchain.Transaction)
if txMsg.Type == ethchain.TxPre { if txMsg.Event == "newTx:pre" {
object := state.GetAccount(gui.addr) object := state.GetAccount(gui.addr)
if bytes.Compare(tx.Sender(), gui.addr) == 0 && object.Nonce <= tx.Nonce { if bytes.Compare(tx.Sender(), gui.addr) == 0 && object.Nonce <= tx.Nonce {

Loading…
Cancel
Save