added the form items to set the TelemetryField on UI windows

This commit is contained in:
2026-03-09 22:01:07 +00:00
parent ef8f4603d6
commit 2ef3d0d375
5 changed files with 84 additions and 28 deletions
+11
View File
@@ -3,6 +3,7 @@ package controllers
import (
"esdi/cdashdisplay"
helper "esdi/helpers"
"esdi/telemetry"
"esdi/tui/internal/services"
"esdi/tui/internal/views"
"fmt"
@@ -212,6 +213,16 @@ func (lc *LayoutController) createWindow() {
// the buttons for that purpuse
func (lc *LayoutController) updateFormView(win *cdashdisplay.DesktopUIWindow) error {
// OnSuccess we update our form to be an existing window form
lc.Messages <- fmt.Sprintf("Setting up window:\n%+v\n", win)
telemFieldID, ok := telemetry.GetFieldID(win.UIData.TelemetryField)
if !ok {
telemFieldID = 1000
}
lc.Messages <- fmt.Sprintf("field id for: %s is %d\n", win.UIData.TelemetryField, telemFieldID)
err := lc.LayoutToolView.WindowCreatedSuccessfuly(win)
if err != nil {
return err
+4 -3
View File
@@ -51,7 +51,7 @@ func NewCDashDisplayWindowFormView() *CDashDisplayWindowFormView {
view.TextSize.SetCurrentOption(0)
view.TelemetryField = tview.NewDropDown().SetLabel("Telemetry Field")
for _, fieldName := range telemetry.FieldNames {
for _, fieldName := range telemetry.FieldNames[3:] {
view.TelemetryField.AddOption(fieldName, blankDropdownOptionCallback)
}
view.TelemetryField.SetCurrentOption(0)
@@ -66,7 +66,8 @@ func NewCDashDisplayWindowFormView() *CDashDisplayWindowFormView {
AddFormItem(view.ShowID).
AddFormItem(view.WinType).
AddFormItem(view.TitleSize).
AddFormItem(view.TextSize)
AddFormItem(view.TextSize).
AddFormItem(view.TelemetryField)
view.Form.SetBorder(true).
SetTitle("New Window Form").
@@ -132,7 +133,7 @@ func (fv *WindowFormView) SetValues(win *cdashdisplay.DesktopUIWindow) {
telemFieldID, ok := telemetry.GetFieldID(win.UIData.TelemetryField)
if !ok {
telemFieldID = 0
telemFieldID = 100
}
fv.Form.TelemetryField.SetCurrentOption(int(telemFieldID))
}