forked from cerc-io/plugeth
Download indicator
This commit is contained in:
parent
acfb5b85fb
commit
6ecbbe4006
@ -254,6 +254,7 @@ ApplicationWindow {
|
||||
|
||||
statusBar: StatusBar {
|
||||
height: 32
|
||||
id: statusBar
|
||||
RowLayout {
|
||||
Button {
|
||||
id: miningButton
|
||||
@ -294,16 +295,16 @@ ApplicationWindow {
|
||||
}
|
||||
|
||||
ProgressBar {
|
||||
id: syncProgressIndicator
|
||||
visible: false
|
||||
objectName: "syncProgressIndicator"
|
||||
id: downloadIndicator
|
||||
value: 0
|
||||
visible: true
|
||||
objectName: "downloadIndicator"
|
||||
y: 3
|
||||
width: 140
|
||||
indeterminate: true
|
||||
anchors.right: peerGroup.left
|
||||
anchors.rightMargin: 5
|
||||
x: statusBar.width / 2 - this.width / 2
|
||||
width: 160
|
||||
}
|
||||
|
||||
|
||||
RowLayout {
|
||||
id: peerGroup
|
||||
y: 7
|
||||
|
21
mist/gui.go
21
mist/gui.go
@ -385,14 +385,13 @@ func (gui *Gui) update() {
|
||||
)
|
||||
|
||||
peerUpdateTicker := time.NewTicker(5 * time.Second)
|
||||
generalUpdateTicker := time.NewTicker(1 * time.Second)
|
||||
generalUpdateTicker := time.NewTicker(500 * time.Millisecond)
|
||||
statsUpdateTicker := time.NewTicker(5 * time.Second)
|
||||
|
||||
state := gui.eth.StateManager().TransState()
|
||||
|
||||
unconfirmedFunds := new(big.Int)
|
||||
gui.win.Root().Call("setWalletValue", fmt.Sprintf("%v", ethutil.CurrencyToString(state.GetAccount(gui.address()).Balance)))
|
||||
gui.getObjectByName("syncProgressIndicator").Set("visible", !gui.eth.IsUpToDate())
|
||||
|
||||
lastBlockLabel := gui.getObjectByName("lastBlockLabel")
|
||||
miningLabel := gui.getObjectByName("miningLabel")
|
||||
@ -439,9 +438,6 @@ func (gui *Gui) update() {
|
||||
|
||||
state.UpdateStateObject(object)
|
||||
}
|
||||
case msg := <-chainSyncChan:
|
||||
sync := msg.Resource.(bool)
|
||||
gui.win.Root().ObjectByName("syncProgressIndicator").Set("visible", sync)
|
||||
|
||||
case <-objectChan:
|
||||
gui.loadAddressBook()
|
||||
@ -464,9 +460,22 @@ func (gui *Gui) update() {
|
||||
miningLabel.Set("text", "Mining @ "+strconv.FormatInt(pow.GetHashrate(), 10)+"Khash")
|
||||
}
|
||||
|
||||
blockLength := gui.eth.BlockPool().BlocksProcessed
|
||||
chainLength := gui.eth.BlockPool().ChainLength
|
||||
|
||||
var (
|
||||
pct float64 = 1.0 / float64(chainLength) * float64(blockLength)
|
||||
dlWidget = gui.win.Root().ObjectByName("downloadIndicator")
|
||||
)
|
||||
if pct < 1.0 {
|
||||
dlWidget.Set("visible", true)
|
||||
dlWidget.Set("value", pct)
|
||||
} else {
|
||||
dlWidget.Set("visible", false)
|
||||
}
|
||||
|
||||
case <-statsUpdateTicker.C:
|
||||
gui.setStatsPane()
|
||||
|
||||
}
|
||||
}
|
||||
}()
|
||||
|
Loading…
Reference in New Issue
Block a user