Delete device, better device edit dialog

This commit is contained in:
Magnus Åhall 2026-02-26 22:34:13 +01:00
parent e92022f1f1
commit 06054c8d39
4 changed files with 155 additions and 30 deletions

View file

@ -48,7 +48,7 @@ func readConfig() (config Config, err error) {
return
}
func (cfg *Config) UpdateDevice(currentName string, deviceToUpdate Device) (dev Device, err error) {
func (cfg *Config) UpdateDevice(currentName string, deviceToUpdate Device) (dev Device, err error) {// {{{
i := slices.IndexFunc(cfg.Devices, func(d Device) bool {
return strings.TrimSpace(strings.ToLower(d.Name)) == strings.TrimSpace(strings.ToLower(currentName))
@ -104,4 +104,14 @@ func (cfg *Config) UpdateDevice(currentName string, deviceToUpdate Device) (dev
err = os.WriteFile(cfg.filename, j, 0600)
return
}
}// }}}
func (cfg *Config) DeleteDevice(devname string) (err error) {// {{{
cfg.Devices = slices.DeleteFunc(cfg.Devices, func(d Device) bool {
return strings.TrimSpace(strings.ToLower(d.Name)) == strings.TrimSpace(strings.ToLower(devname))
})
j, _ := json.Marshal(cfg)
err = os.WriteFile(cfg.filename, j, 0600)
return
}// }}}