add custom container sorter

This commit is contained in:
Bradley Cicenas
2016-12-30 03:22:25 +00:00
parent d5b35fe01b
commit 12ce9b1874
3 changed files with 58 additions and 5 deletions

16
grid.go
View File

@@ -2,13 +2,13 @@ package main
import (
"fmt"
"sort"
ui "github.com/gizak/termui"
)
type Grid struct {
cursorPos uint
sortField string
containers map[string]*Container
}
@@ -24,10 +24,18 @@ func (g *Grid) Len() uint {
// Return sorted list of container IDs
func (g *Grid) CIDs() []string {
var ids []string
for id, _ := range g.containers {
ids = append(ids, id)
var containers []*Container
for _, c := range g.containers {
containers = append(containers, c)
}
sorter := Sorters[g.sortField]
sorter(containers).Sort()
for _, c := range containers {
ids = append(ids, c.id)
}
sort.Strings(ids)
return ids
}