func saveValue(g *gocui.Gui, v *gocui.View) error { var l string //myViews.dialog.Rewind() l = myViews.dialog.ViewBuffer() lx := len(l) var pl string for _, placeholder := range global.pls.Placeholders { if placeholder.PropertyName == global.placeholder { pl = placeholder.PlaceHolder break } } value := common.Value{pl, l[:lx-2]} values := common.Values{[]*common.Value{&value}} api.SetValues(global.appName, []string{""}, values) if err := g.DeleteView("dialog"); err != nil { return err } loadPlaceholders(g, myViews.apps) if err := g.SetCurrentView("placeholders"); err != nil { return err } return nil }
func loadPlaceholders(g *gocui.Gui, v *gocui.View) error { sc := getScreenConf(g) _, y := myViews.apps.Cursor() if err := g.DeleteView("placeholders"); err != nil { return err } if err := g.DeleteView("values"); err != nil { return err } vp, _ := layoutPlaceHolders(g, sc) vv, _ := layoutValues(g, sc) vp.SetCursor(0, 0) vp.Clear() vv.Clear() global.appName, _ = v.Line(y) pls, _ := api.GetPlaceholders(global.appName) vls, _ := api.GetValues(global.appName, []string{""}) global.vls = vls global.pls = pls for _, pl := range pls.Placeholders { value := pl.PropertyValue for _, vl := range vls.Values { if vl.Name == pl.PlaceHolder { value = vl.Value break } } if len(value) == 0 { value = " " } fmt.Fprintln(vp, pl.PropertyName) fmt.Fprintln(vv, value) } if err := g.SetCurrentView("placeholders"); err != nil { return err } return nil }