8eb5f17f73
style(tracker): oneline functions and remove spurious comments
2025-06-20 14:52:46 +03:00
f47bee37b0
style(tracker): clean up Alerts Push and Pop
2025-06-20 14:49:07 +03:00
4f2c73d0db
refactor(tracker): Player sends PlayerStatus to the Model
2025-06-19 11:37:11 +03:00
340620ed49
feat(tracker): show CPU load percentage in the song panel
2025-06-17 17:59:54 +03:00
c6b70560f6
fix(tracker): update derived data after undo/redo
2025-06-16 18:44:33 +03:00
1eea263dc9
fix(tracker/gioui): show muted instruments in different style
2025-06-16 18:35:06 +03:00
c023dc08b8
fix(tracker/gioui): BPM tooltip showed "Song length", not BPM
2025-06-11 19:43:05 +03:00
0e32608872
refactor(tracker): remove unnecessary Enabled function
2025-06-11 19:41:58 +03:00
283fbc1171
feat(tracker): rework the MIDI input and note event handling
2025-06-11 19:14:11 +03:00
7ef868a434
refactor(tracker): rewrite params to avoid heap allocations
2025-06-11 19:14:11 +03:00
4f779edb88
perf(tracker/gioui): avoid heap escapes in the menubar
2025-06-11 19:14:11 +03:00
d20a23d57b
refactor(tracker/gioui): move element etc. functions away from style
...
Now the element / fg / bg functions are passed to the actual Layout
function, not first put to the style. This avoids moving of the
element function to heap.
2025-06-11 19:14:11 +03:00
de2e64533d
refactor(tracker): refactor StringData to StringValue
2025-06-11 19:14:11 +03:00
74f37318d6
refactor(tracker): refactor IntData to IntValue, following Bool example
2025-06-11 19:14:11 +03:00
fb3a0da3ed
refactor(tracker): make Bool have separate BoolValue and Enabler
2025-06-11 19:14:11 +03:00
036cb1f34d
refactor(tracker): Make Action have separate Doer and Enabler
2025-06-11 19:14:11 +03:00
32f1e1baea
refactor(tracker/gioui): unify default & user config yaml handling
2025-05-23 23:35:51 +03:00
5b260d19f5
refactor(tracker/gioui): rename keyevent.go to keybindings.go
...
This way all the .go files that embed .yml files have matching
file names.
2025-05-23 21:46:34 +03:00
ddbaf6a4bb
refactor(tracker): use UnmarshalStrict when decoding embedded yamls
...
Since we have 100% control over what data gets embedded, there is no
reason to embed anything that doesn't pass the strict yaml parsing
and it's better we throw a panic right away so it's easy to catch
this during development.
2025-05-23 21:44:23 +03:00
448bc9f236
fix(tracker): OOB checks used index > len, but should've used >=
2025-05-20 19:05:17 +03:00
afb1fee4ed
feat(tracker/gioui): add theme.yml which contains all styling
2025-05-20 19:02:16 +03:00
8245fbda24
feat(track/gioui): ctrl + scrollwheel adjusts global GUI zoom
...
Closes #153
2025-05-01 19:16:39 +03:00
0f42a993dc
feat(tracker/gioui): oscilloscope allows y-scaling and shows limits
...
Closes #61
2025-05-01 12:05:32 +03:00
554a840982
refactor(tracker): new closing mechanism logic
2025-05-01 10:20:41 +03:00
9f89c37956
refactor(tracker): rename trySend to TrySend to make it public
2025-04-30 22:00:34 +03:00
0199658025
style(tracker): use for range loops everywhere in detector.go
2025-04-30 16:24:48 +03:00
3623bdf5b2
refactor(tracker): bake 1 kHz gain offset into filter coeffs
2025-04-29 20:45:14 +03:00
fe9daf7988
fix(tracker): loudness A- and C-weighting did not have proper scale
2025-04-29 15:12:57 +03:00
bf0d697b80
fix(tracker): reset also biquad filter states to avoid endless nans
2025-04-28 15:23:00 +03:00
5fd78d8362
feat(tracker): buttons for loudness weighting and peak oversampling
...
Closes #186
2025-04-27 21:30:10 +03:00
805b98524c
fix(tracker/gioui): use Clickables instead of widget.Clickables
2025-04-27 20:24:40 +03:00
54176cc2b3
refactor(tracker/gioui): separate MenuBar from SongPanel
2025-04-27 20:16:35 +03:00
845f0119c8
fix(tracker): peak amplitude dBs should be 20*log10, not 10*log10
2025-04-27 19:55:25 +03:00
5a3c859a51
fix(tracker): also peak detector windows were in wrong order
2025-04-27 19:29:23 +03:00
5c0b86a0f0
fix(tracker): the peak detector result was in wrong layout
2025-04-27 14:13:31 +03:00
e0392323c0
feat(tracker/gioui): add expander panel showing peaks
2025-04-27 14:13:31 +03:00
bb605ffa0b
feat(tracker/gioui): add expanders into song panel
2025-04-27 13:03:34 +03:00
40be82de46
feat(tracker/gioui): refactor & rework playbar with the play buttons
2025-04-27 11:34:00 +03:00
42c95ab8ee
feat(tracker/gioui): rework the labels of numeric updowns
2025-04-27 09:07:46 +03:00
d0413e0a13
feat(tracker/gioui): rewrite the numeric updown, with new appearance
2025-04-27 09:00:13 +03:00
bdf9e2ba0c
feat(tracker/gioui): UI splitter bars snap better to window edges
2025-04-26 01:48:42 +03:00
78fc6302a0
fix(tracker/gomidi): static cgo linking to avoid DLL dependencies
...
The linker flags -static -static-libgcc -static-libstdc++ tell mingw
to link statically; otherwise gcc_s_seh-1, stdc++-6 and winpthread-1
are needed.
Fixes #188 .
2025-02-28 15:15:17 +02:00
ae217665bf
feat(tracker/presets): new and tweaked presets from Reaby
...
The presets are also organized by their type into subfolders.
Closes #136
2025-02-25 18:53:28 +02:00
46a9c7dab3
feat(tracker): preset names include their directories
2025-01-25 22:52:11 +02:00
5ee7e44ed7
fix(tracker): ReadInstrument forgot to close the file
2025-01-25 22:18:28 +02:00
7ff3c942cb
feat(tracker/gioui): preferences.yml for window size or maximized ( #185 )
2024-12-07 13:54:08 +02:00
8d71cf3ca7
fix(tracker): MakeSetLength did not handle invalid parameters
...
(cherry picked from commit 1b824f77ab40dbabba4586de4b97bb113e8ee264)
2024-11-10 00:10:17 +02:00
b255a68ebc
fix: changes after review (see PR #176 )
2024-11-10 00:02:13 +02:00
d517576a65
feat: introduce "cache" for derived model information
2024-11-10 00:02:13 +02:00
55c062a390
feat: highlight sliders that are controlled by a send, and add tooltip (over value)
2024-11-10 00:02:13 +02:00