diff --git a/bubbletea.go b/bubbletea.go index 0cfa5fd..e907a8e 100644 --- a/bubbletea.go +++ b/bubbletea.go @@ -31,7 +31,7 @@ func (m model) Update(msg tea.Msg) (tea.Model, tea.Cmd) { // The "down" and "j" keys move the cursor down case "down", "j": - if m.cursor < len(m.choices)-1 { + if m.cursor < len(m.todos)-1 { m.cursor++ } diff --git a/model.go b/model.go index 826fd6a..7d05532 100644 --- a/model.go +++ b/model.go @@ -1,19 +1,25 @@ package main type model struct { - choices []string // items on the to-do list - cursor int // which to-do list item our cursor is pointing at - selected map[int]struct{} // which to-do items are selected + todos []string // ALL items on the to-do list + list []string // items currently visible on the list right now + cursor int // which to-do list item our cursor is pointing at + done map[int]struct{} // which to-do items are selected + tab int // which tab is selected } func initialModel() model { return model{ - // Our to-do list is a grocery list - choices: []string{"Buy carrots", "Buy celery", "Buy kohlrabi"}, + // Start empty + todos: []string{}, + + // start on today tab + // 0: inbox, 1: today, 2: tomorrow, 3: scheduled, 4: anytime + tab: 1, // A map which indicates which choices are selected. We're using // the map like a mathematical set. The keys refer to the indexes // of the `choices` slice, above. - selected: make(map[int]struct{}), + done: make(map[int]struct{}), } } \ No newline at end of file