Making newEditField accept width,height for labelWarning

Signed-off-by: Karthik Prabhu Vinod <karthik.prabhu.vinod@intel.com>
This commit is contained in:
Karthik Prabhu Vinod
2020-03-06 21:47:47 -08:00
parent 086d3d030d
commit ada648b4df
4 changed files with 27 additions and 18 deletions

View File

@@ -445,20 +445,28 @@ func (page *BasePage) getModel() *model.SystemInstall {
return page.tui.model
}
func newEditField(frame *clui.Frame, validation bool, cb func(k term.Key, ch rune) bool) (*clui.EditField, *clui.Label) {
func newEditField(frame *clui.Frame, validation bool, cb func(k term.Key, ch rune) bool, labelHeight int) (*clui.EditField, *clui.Label) {
var label *clui.Label
height := 2
frameheight := 2
if validation {
height = 1
frameheight = 1
}
iframe := clui.CreateFrame(frame, 5, height, BorderNone, Fixed)
iframe := clui.CreateFrame(frame, 5, frameheight, BorderNone, Fixed)
iframe.SetPack(clui.Vertical)
edit := clui.CreateEditField(iframe, 1, "", Fixed)
if validation {
label = clui.CreateLabel(iframe, AutoSize, 1, "", Fixed)
labelH := func() int {
if labelHeight == 0 {
return AutoSize
}
return labelHeight
}
label = clui.CreateLabel(iframe, 1, labelH(), "", Fixed)
label.SetVisible(false)
label.SetBackColor(errorLabelBg)
label.SetTextColor(errorLabelFg)

View File

@@ -1,4 +1,4 @@
// Copyright © 2019 Intel Corporation
// Copyright © 2020 Intel Corporation
//
// SPDX-License-Identifier: GPL-3.0-only
@@ -135,7 +135,7 @@ func newKeyboardPage(tui *Tui) (Page, error) {
lbl = clui.CreateLabel(frame, AutoSize, 1, "Test keyboard", Fixed)
lbl.SetPaddings(0, 1)
newEditField(frame, false, nil)
newEditField(frame, false, nil, 0)
page.activated = page.confirmBtn
} else {

View File

@@ -1,4 +1,4 @@
// Copyright © 2018 Intel Corporation
// Copyright © 2020 Intel Corporation
//
// SPDX-License-Identifier: GPL-3.0-only
@@ -210,11 +210,11 @@ func newNetworkInterfacePage(tui *Tui) (Page, error) {
page.ifaceLbl = clui.CreateLabel(ifaceFrm, AutoSize, 2, "", Fixed)
page.ifaceLbl.SetAlign(AlignLeft)
page.IPEdit, page.IPWarning = newEditField(fldFrm, true, validateIPEdit)
page.NetMaskEdit, page.NetMaskWarning = newEditField(fldFrm, true, validateIPEdit)
page.GatewayEdit, page.GatewayWarning = newEditField(fldFrm, true, nil)
page.DNSServerEdit, page.DNSServerWarning = newEditField(fldFrm, true, nil)
page.DNSDomainEdit, page.DNSDomainWarning = newEditField(fldFrm, true, nil)
page.IPEdit, page.IPWarning = newEditField(fldFrm, true, validateIPEdit, 0)
page.NetMaskEdit, page.NetMaskWarning = newEditField(fldFrm, true, validateIPEdit, 0)
page.GatewayEdit, page.GatewayWarning = newEditField(fldFrm, true, nil, 0)
page.DNSServerEdit, page.DNSServerWarning = newEditField(fldFrm, true, nil, 0)
page.DNSDomainEdit, page.DNSDomainWarning = newEditField(fldFrm, true, nil, 0)
page.IPEdit.OnChange(func(ev clui.Event) {
page.validateIPField(page.IPEdit, page.IPWarning)

View File

@@ -1,4 +1,4 @@
// Copyright © 2018 Intel Corporation
// Copyright © 2020 Intel Corporation
//
// SPDX-License-Identifier: GPL-3.0-only
@@ -193,7 +193,7 @@ func newUseraddPage(tui *Tui) (Page, error) {
fldFrm := clui.CreateFrame(frm, 50, AutoSize, BorderNone, Fixed)
fldFrm.SetPack(clui.Vertical)
page.usernameEdit, page.usernameWarning = newEditField(fldFrm, true, nil)
page.usernameEdit, page.usernameWarning = newEditField(fldFrm, true, nil, 0)
page.usernameEdit.OnChange(func(ev clui.Event) {
if len(page.loginEdit.Title()) == 0 {
page.changedLogin = false
@@ -214,7 +214,7 @@ func newUseraddPage(tui *Tui) (Page, error) {
})
page.usernameWarning.SetVisible(true)
page.loginEdit, page.loginWarning = newEditField(fldFrm, true, nil)
page.loginEdit, page.loginWarning = newEditField(fldFrm, true, nil, 0)
page.loginEdit.OnChange(func(ev clui.Event) {
if len(page.loginEdit.Title()) == 0 {
page.changedLogin = false
@@ -236,7 +236,7 @@ func newUseraddPage(tui *Tui) (Page, error) {
page.loginWarning.SetVisible(true)
page.passwordEdit, _ = newEditField(fldFrm, false, nil)
page.passwordEdit, _ = newEditField(fldFrm, false, nil, 0)
page.passwordEdit.SetPasswordMode(true)
page.passwordEdit.OnChange(func(ev clui.Event) {
@@ -265,9 +265,10 @@ func newUseraddPage(tui *Tui) (Page, error) {
return false
})
page.pwConfirmEdit, page.passwordWarning = newEditField(fldFrm, true, nil)
page.pwConfirmEdit, page.passwordWarning = newEditField(fldFrm, true, nil, 2)
page.pwConfirmEdit.SetPasswordMode(true)
page.passwordWarning.SetVisible(true)
page.passwordWarning.SetMultiline(true)
page.pwConfirmEdit.OnChange(func(ev clui.Event) {
page.validatePassword()