refactor(tracker): use pointers to bools for simple booleans

This commit is contained in:
5684185+vsariola@users.noreply.github.com
2025-11-02 13:09:25 +02:00
parent 9db6b669c9
commit 628365c486

View File

@ -15,28 +15,26 @@ type (
SetValue(bool) SetValue(bool)
} }
Panic Model Panic Model
IsRecording Model IsRecording Model
Playing Model Playing Model
InstrEnlarged Model Effect Model
Effect Model TrackMidiIn Model
TrackMidiIn Model UnitSearching Model
Follow Model UnitDisabled Model
UnitSearching Model LoopToggle Model
UnitDisabled Model Mute Model
LoopToggle Model Solo Model
UniquePatterns Model Oversampling Model
Mute Model InstrEditor Model
Solo Model InstrPresets Model
LinkInstrTrack Model InstrComment Model
Oversampling Model Thread1 Model
InstrEditor Model Thread2 Model
InstrPresets Model Thread3 Model
InstrComment Model Thread4 Model
Thread1 Model
Thread2 Model simpleBool bool
Thread3 Model
Thread4 Model
) )
func MakeBool(valueEnabler interface { func MakeBool(valueEnabler interface {
@ -74,6 +72,9 @@ func (v Bool) Enabled() bool {
return v.enabler.Enabled() return v.enabler.Enabled()
} }
func (v *simpleBool) Value() bool { return bool(*v) }
func (v *simpleBool) SetValue(value bool) { *v = simpleBool(value) }
// Thread methods // Thread methods
func (m *Model) getThreadsBit(bit int) bool { func (m *Model) getThreadsBit(bit int) bool {
@ -179,9 +180,7 @@ func (m *Playing) Enabled() bool { return m.playing || !m.instrEnlarged }
// InstrEnlarged methods // InstrEnlarged methods
func (m *Model) InstrEnlarged() Bool { return MakeEnabledBool((*InstrEnlarged)(m)) } func (m *Model) InstrEnlarged() Bool { return MakeEnabledBool((*simpleBool)(&m.instrEnlarged)) }
func (m *InstrEnlarged) Value() bool { return m.instrEnlarged }
func (m *InstrEnlarged) SetValue(val bool) { m.instrEnlarged = val }
// InstrEditor methods // InstrEditor methods
@ -211,9 +210,7 @@ func (m *InstrPresets) SetValue(val bool) {
// Follow methods // Follow methods
func (m *Model) Follow() Bool { return MakeEnabledBool((*Follow)(m)) } func (m *Model) Follow() Bool { return MakeEnabledBool((*simpleBool)(&m.follow)) }
func (m *Follow) Value() bool { return m.follow }
func (m *Follow) SetValue(val bool) { m.follow = val }
// TrackMidiIn (Midi Input for notes in the tracks) // TrackMidiIn (Midi Input for notes in the tracks)
@ -313,9 +310,7 @@ func (t *LoopToggle) SetValue(val bool) {
// UniquePatterns methods // UniquePatterns methods
func (m *Model) UniquePatterns() Bool { return MakeEnabledBool((*UniquePatterns)(m)) } func (m *Model) UniquePatterns() Bool { return MakeEnabledBool((*simpleBool)(&m.uniquePatterns)) }
func (m *UniquePatterns) Value() bool { return m.uniquePatterns }
func (m *UniquePatterns) SetValue(val bool) { m.uniquePatterns = val }
// Mute methods // Mute methods
func (m *Model) Mute() Bool { return MakeBool((*Mute)(m)) } func (m *Model) Mute() Bool { return MakeBool((*Mute)(m)) }
@ -369,6 +364,4 @@ func (m *Solo) Enabled() bool { return m.d.InstrIndex >= 0 && m.d.InstrIndex < l
// LinkInstrTrack methods // LinkInstrTrack methods
func (m *Model) LinkInstrTrack() Bool { return MakeEnabledBool((*LinkInstrTrack)(m)) } func (m *Model) LinkInstrTrack() Bool { return MakeEnabledBool((*simpleBool)(&m.linkInstrTrack)) }
func (m *LinkInstrTrack) Value() bool { return m.linkInstrTrack }
func (m *LinkInstrTrack) SetValue(val bool) { m.linkInstrTrack = val }