kanban

Kanban client in Gio
Log | Files | Refs | README | LICENSE

commit 8de799af35fb86544cfd839a204d95dd2f0a95f2
parent 6203e4928027e479ed4485b7b5f089b1861238c8
Author: Jack Mordaunt <jackmordaunt@gmail.com>
Date:   Wed,  4 Nov 2020 17:36:45 +0800

feat: update tickets

Diffstat:
Mcmd/kanban/main.go | 26+++++++++++++++++++++++---
1 file changed, 23 insertions(+), 3 deletions(-)

diff --git a/cmd/kanban/main.go b/cmd/kanban/main.go @@ -157,6 +157,17 @@ func (ui *UI) Update(gtx C) { fmt.Printf("error: %s\n", err) } } + if state.EditButton.Clicked() { + ui.TicketForm.ID = state.ID + ui.TicketForm.Title.SetText(state.Title) + ui.TicketForm.Category.SetText(state.Category) + ui.TicketForm.Summary.SetText(state.Summary) + ui.TicketForm.Details.SetText(state.Details) + // ui.TicketForm.References.SetText(state.References) + ui.Modal = func(gtx C) D { + return ui.TicketForm.Layout(gtx, ui.Th, "") + } + } } if ui.TicketForm.Submit.Clicked() { ticket, err := ui.TicketForm.Validate() @@ -164,9 +175,16 @@ func (ui *UI) Update(gtx C) { fmt.Printf("error: %s\n", err) return } - if err := ui.Kanban.Assign(ui.TicketForm.Stage, ticket); err != nil { - fmt.Printf("error: assigning ticket: %s\n", err) - return + if assign := ui.TicketForm.Stage != ""; assign { + if err := ui.Kanban.Assign(ui.TicketForm.Stage, ticket); err != nil { + fmt.Printf("error: assigning ticket: %s\n", err) + return + } + } else { + if err := ui.Kanban.Update(ticket); err != nil { + fmt.Printf("error: updating ticket: %s\n", err) + return + } } ui.TicketForm = TicketForm{} ui.Modal = nil @@ -312,6 +330,7 @@ func Centered(gtx C, content layout.Widget) D { // TicketForm renders the form for ticket information. type TicketForm struct { Stage string + ID int Title materials.TextField Category materials.TextField Summary materials.TextField @@ -322,6 +341,7 @@ type TicketForm struct { func (form TicketForm) Validate() (kanban.Ticket, error) { ticket := kanban.Ticket{ + ID: form.ID, Title: form.Title.Text(), Details: form.Details.Text(), Summary: form.Summary.Text(),