aboutsummaryrefslogtreecommitdiff
path: root/go-src/windowsHelpers.go
diff options
context:
space:
mode:
Diffstat (limited to 'go-src/windowsHelpers.go')
-rw-r--r--go-src/windowsHelpers.go15
1 files changed, 8 insertions, 7 deletions
diff --git a/go-src/windowsHelpers.go b/go-src/windowsHelpers.go
index 7d2e35c..c5845ea 100644
--- a/go-src/windowsHelpers.go
+++ b/go-src/windowsHelpers.go
@@ -121,16 +121,15 @@ type formInput struct {
validationFunc func(string) bool
}
-func formWindow(boxTitle string, backWindow window, formInputs []formInput, currentValues ...string) (userInputs []string) {
- userInputs = currentValues
+func formWindow(boxTitle string, backWindow window, formInputs []formInput, output *[]string) {
// Go through all inputs
- for i, v := range formInputs[len(currentValues):] {
+ for i, v := range formInputs[len(*output):] {
csi.ClearScreen()
ui.NormalBox(true, boxTitle)
// Show filled input fields
- for j, va := range userInputs {
+ for j, va := range *output {
ui.InputFieldFilled(formInputs[j].name, va)
}
@@ -148,7 +147,7 @@ func formWindow(boxTitle string, backWindow window, formInputs []formInput, curr
// If input data isn't valid, show an error and the same screen
if !v.validationFunc(input) {
formCallback := func(...string) {
- defer formWindow(boxTitle, backWindow, formInputs, userInputs...)
+ defer formWindow(boxTitle, backWindow, formInputs, output)
}
defer showError(invalidValueFor(v.name), formCallback)
return
@@ -156,7 +155,7 @@ func formWindow(boxTitle string, backWindow window, formInputs []formInput, curr
}
// Add current input as a filled input
- userInputs = append(userInputs, input)
+ *output = append(*output, input)
}
return
}
@@ -177,7 +176,9 @@ func validatedMultiForm(input string, returnWindow window, props ...multiFormPro
if v.propInd == propInd {
triedUpdate = true
- values := formWindow(v.editTitle, returnWindow, append(inputs, v.formInp))
+ var values []string
+ formWindow(v.editTitle, returnWindow, append(inputs, v.formInp), &values)
+
updateSuccessful = v.updateF(values)
if updateSuccessful && v.postSucUpdateF != nil {