mirror of https://github.com/miguelmota/cointop
toggle all favorites key
Former-commit-id: c7c0dfa41e55f2bbc020b830e5fda31202f21665 [formerly c7c0dfa41e55f2bbc020b830e5fda31202f21665 [formerly 2987cbea49d6579ccc1a23836b3ca62663fdc1ad [formerly fa2061f891dcad0ef00007704c63b0e91a22cfb1]]] Former-commit-id: 164a2951369f4098ed14734724a3b5fa97eca15c Former-commit-id: b7b71b512703f138c33a8cfefefab71980d2e53d [formerly 0da5ddf5bfd603938a926448a8659af0090f88fc] Former-commit-id: e6d54f8ac9f30141a01017d09d73c038f5ad94f6pull/15/head
parent
de3cd565f8
commit
510d761b51
@ -1,21 +1,7 @@
|
||||
package cointop
|
||||
|
||||
func (ct *Cointop) toggleShowFavorites() error {
|
||||
for _, v := range ct.allcoinsmap {
|
||||
if ct.favorites[v.Symbol] {
|
||||
v.Favorite = true
|
||||
}
|
||||
}
|
||||
|
||||
ct.filterByFavorites = !ct.filterByFavorites
|
||||
ct.sort(ct.sortby, ct.sortdesc, ct.coins)
|
||||
//ct.updateCoins()
|
||||
/*
|
||||
ct.update(func() {
|
||||
ct.tableview.Clear()
|
||||
ct.updateTable()
|
||||
})
|
||||
ct.rowChanged()
|
||||
*/
|
||||
ct.updateTable()
|
||||
return nil
|
||||
}
|
||||
|
@ -0,0 +1,70 @@
|
||||
package cointop
|
||||
|
||||
func (ct *Cointop) updateCoins() error {
|
||||
list := []*coin{}
|
||||
allcoinsmap, err := ct.api.GetAllCoinData()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if len(ct.allcoinsmap) == 0 {
|
||||
ct.allcoinsmap = map[string]*coin{}
|
||||
}
|
||||
for k, v := range allcoinsmap {
|
||||
last := ct.allcoinsmap[k]
|
||||
ct.allcoinsmap[k] = &coin{
|
||||
ID: v.ID,
|
||||
Name: v.Name,
|
||||
Symbol: v.Symbol,
|
||||
Rank: v.Rank,
|
||||
PriceUSD: v.PriceUSD,
|
||||
PriceBTC: v.PriceBTC,
|
||||
USD24HVolume: v.USD24HVolume,
|
||||
MarketCapUSD: v.MarketCapUSD,
|
||||
AvailableSupply: v.AvailableSupply,
|
||||
TotalSupply: v.TotalSupply,
|
||||
PercentChange1H: v.PercentChange1H,
|
||||
PercentChange24H: v.PercentChange24H,
|
||||
PercentChange7D: v.PercentChange7D,
|
||||
LastUpdated: v.LastUpdated,
|
||||
}
|
||||
if last != nil {
|
||||
ct.allcoinsmap[k].Favorite = last.Favorite
|
||||
}
|
||||
}
|
||||
if len(ct.allcoins) == 0 {
|
||||
for i := range ct.allcoinsmap {
|
||||
coin := ct.allcoinsmap[i]
|
||||
list = append(list, coin)
|
||||
}
|
||||
ct.allcoins = list
|
||||
ct.sort(ct.sortby, ct.sortdesc, ct.allcoins)
|
||||
} else {
|
||||
// update list in place without changing order
|
||||
for i := range ct.allcoinsmap {
|
||||
cm := ct.allcoinsmap[i]
|
||||
for k := range ct.allcoins {
|
||||
c := ct.allcoins[k]
|
||||
if c.ID == cm.ID {
|
||||
// TODO: improve this
|
||||
c.ID = cm.ID
|
||||
c.Name = cm.Name
|
||||
c.Symbol = cm.Symbol
|
||||
c.Rank = cm.Rank
|
||||
c.PriceUSD = cm.PriceUSD
|
||||
c.PriceBTC = cm.PriceBTC
|
||||
c.USD24HVolume = cm.USD24HVolume
|
||||
c.MarketCapUSD = cm.MarketCapUSD
|
||||
c.AvailableSupply = cm.AvailableSupply
|
||||
c.TotalSupply = cm.TotalSupply
|
||||
c.PercentChange1H = cm.PercentChange1H
|
||||
c.PercentChange24H = cm.PercentChange24H
|
||||
c.PercentChange7D = cm.PercentChange7D
|
||||
c.LastUpdated = cm.LastUpdated
|
||||
c.Favorite = cm.Favorite
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
Loading…
Reference in New Issue