fix(tracker): unit searching to work more reliably

This commit is contained in:
5684185+vsariola@users.noreply.github.com
2024-02-17 20:54:46 +02:00
parent db6c9f6052
commit 2b3f6d8200
7 changed files with 39 additions and 15 deletions

View File

@ -209,6 +209,8 @@ func (v *Instruments) SetSelected(value int) {
v.d.InstrIndex = intMax(intMin(value, v.Count()-1), 0)
v.d.UnitIndex = 0
v.d.UnitIndex2 = 0
v.d.UnitSearching = false
v.d.UnitSearchString = ""
}
func (v *Instruments) SetSelected2(value int) {
@ -310,7 +312,6 @@ func (m *Units) SetSelectedType(t string) {
return
}
defer m.change("SetSelectedType", MajorChange)()
m.d.UnitSearchString = unit.Type
m.d.Song.Patch[m.d.InstrIndex].Units[m.d.UnitIndex] = unit
m.d.Song.Patch[m.d.InstrIndex].Units[m.d.UnitIndex].ID = oldUnit.ID // keep the ID of the replaced unit
}
@ -341,9 +342,8 @@ func (v *Units) SetSelected(value int) {
m := (*Model)(v)
m.d.UnitIndex = intMax(intMin(value, v.Count()-1), 0)
m.d.ParamIndex = 0
if m.d.UnitIndex >= 0 && m.d.UnitIndex < len(m.d.Song.Patch[m.d.InstrIndex].Units) {
m.d.UnitSearchString = m.d.Song.Patch[m.d.InstrIndex].Units[m.d.UnitIndex].Type
}
m.d.UnitSearching = false
m.d.UnitSearchString = ""
}
func (v *Units) SetSelected2(value int) {