From ffe363e7772f4709df2f439a94ee06f26da2b7e8 Mon Sep 17 00:00:00 2001 From: ProtoPenguin Date: Sat, 4 Apr 2026 00:42:19 +0100 Subject: [PATCH] serial port dropdown --- src/main.go | 20 +++++++++++++++++--- src/serial/serial.go | 9 +++++++++ 2 files changed, 26 insertions(+), 3 deletions(-) create mode 100644 src/serial/serial.go diff --git a/src/main.go b/src/main.go index e9c1e20..9923117 100644 --- a/src/main.go +++ b/src/main.go @@ -1,14 +1,28 @@ package main import ( + "fmt" + "main/serial" + "fyne.io/fyne/v2/app" + "fyne.io/fyne/v2/container" "fyne.io/fyne/v2/widget" ) func main () { app := app.New() - win := app.NewWindow("OpenBPS - The Open Source Battery Profiler & Simulator") + deviceSelectorWindow := app.NewWindow("OpenBPS - The Open Source Battery Profiler & Simulator") - win.SetContent(widget.NewLabel("Please Select Serial Port")) - win.ShowAndRun() + //Dropdown for USB Port Selection + portSelector :=widget.NewSelect(serial.Get_Ports(), func(value string) { + fmt.Println("Selected Port: ",value) + }) + portSelector.PlaceHolder = "First Should Be an Autodetect" + + //set first window + deviceSelectorWindow.SetContent(container.NewVBox( + widget.NewLabel("Please Select Serial Port"), + portSelector, + )) + deviceSelectorWindow.ShowAndRun() } diff --git a/src/serial/serial.go b/src/serial/serial.go new file mode 100644 index 0000000..4af8891 --- /dev/null +++ b/src/serial/serial.go @@ -0,0 +1,9 @@ +package serial + +func Get_Ports() []string { + + //will eventually hold a list of connected usb devices with matching ID + ports := []string{"/dev/tty0","/dev/tty2","/dev/tty3"} + + return ports +}