127 Commits

Author SHA1 Message Date
qm210
b08f5d4b1e
fix: make the buttons non-responsive to the spacebar 2024-11-02 22:14:50 +02:00
5684185+vsariola@users.noreply.github.com
19661f90ea feat(tracker/gioui): move panic button to the right of MIDI menu 2024-11-02 21:22:40 +02:00
5684185+vsariola@users.noreply.github.com
94058c2603 fix(tracker): do not close Broker but rather just close the detector 2024-11-02 20:45:10 +02:00
5684185+vsariola@users.noreply.github.com
b73fc0b95b refactor(tracker): use the Broker to communicate when exporting wav 2024-11-02 20:08:48 +02:00
5684185+vsariola@users.noreply.github.com
3eb4d86d52 style(tracker/gioui): remove old commented code 2024-11-02 17:00:56 +02:00
5684185+vsariola@users.noreply.github.com
ec222bd67d feat(tracker): oscilloscope and LUFS / true peak detection
In addition to the oscilloscope and loudness/peak detections, this
commit refactors all the channels between components (i.e.
ModelMessages and PlayerMessages) etc. into a new class Broker. This
was done because now we have one more goroutine running: a Detector,
where the loudness / true peak detection is done in another thread.
The different threads/components are only aware of the Broker and
communicate through it. Currently, it's just a collection of
channels, so it's many-to-one communication, but in the future,
we could change Broker to have many-to-one-to-many communication.

Related to #61
2024-11-02 15:08:09 +02:00
5684185+vsariola@users.noreply.github.com
daf7fb1519 feat(tracker/gioui): user-defined keybindings.yml override defaults
The behaviour of the user-defined keybindings.yml was changed.
It now documents just the changes from the default keybindings.
An empty line with no action means "unbind the key".
2024-10-28 10:04:13 +02:00
qm210
8dfadacafe feat: midi note input for the tracker 2024-10-22 07:56:36 +03:00
5684185+vsariola@users.noreply.github.com
216cde2365 feat: keeping instruments and tracks linked & splitting them
Also includes a refactoring of the List: all methods that accepted
or returned a [from, to] range now return a Range, which is
non-inclusive i.e. [start,end).

Also the assignUnitIds was slightly refactored & a new function
called assignUnitIdsForPatch was added, to assign all unit IDs for
an patch at once.

Closes #157, #163.
2024-10-20 12:23:25 +03:00
5684185+vsariola@users.noreply.github.com
025f8832d9 fix(tracker): adding order row moved cursor incorrectly 2024-10-19 00:00:29 +03:00
5684185+vsariola@users.noreply.github.com
1c42a51cc6 refactor(tracker): use built-in min & max instead of intMin & intMax 2024-10-18 23:43:27 +03:00
5684185+vsariola@users.noreply.github.com
063b2c29c5 feat: add mute and solo toggles for instruments
Closes #168
2024-10-16 00:44:34 +03:00
5684185+vsariola@users.noreply.github.com
00b8e1872a feat(tracker/gioui): using mouse to select rectangles in tables 2024-10-15 13:24:14 +03:00
5684185+vsariola@users.noreply.github.com
04ca0a3f6e fix(tracker/gioui): changing a hex played the previous value 2024-10-15 13:08:02 +03:00
5684185+vsariola@users.noreply.github.com
08386323ed fix(tracker/gioui): all key filters for hexadecimals in note editor 2024-10-15 12:56:10 +03:00
5684185+vsariola@users.noreply.github.com
7470413ad8 fix(tracker): click on hex track low/high nibble selects that nibble
Closes #160
2024-10-15 09:37:21 +03:00
5684185+vsariola@users.noreply.github.com
5099c61705 chore: fix linter problems in work space (remove unuseds etc.) 2024-10-15 09:18:41 +03:00
5684185+vsariola@users.noreply.github.com
b494a69a76 refactor(tracker): change Iterate() func(yield):s to Iterate(yield) 2024-10-15 09:09:17 +03:00
5684185+vsariola@users.noreply.github.com
97e59c5650 refactor(tracker): use go v1.23 style iterators throughout 2024-10-15 00:01:02 +03:00
5684185+vsariola@users.noreply.github.com
2b7ce39069 refactor(tracker/gioui): give Editor Text / SetText methods 2024-10-14 23:36:32 +03:00
5684185+vsariola@users.noreply.github.com
03c994e4da refactor(tracker/gioui): wrap Editor to include common key.Filters 2024-10-14 23:12:58 +03:00
Alexander Kraus
577265b250 feat(tracker): add support for a MIDI controller to the standalone tracker
Closes #132.
2024-10-14 14:11:50 +03:00
5684185+vsariola@users.noreply.github.com
9779beee99 feat: units can have comments
Closes #114
2024-10-13 23:02:13 +03:00
5684185+vsariola@users.noreply.github.com
160eb8eea9 fix(tracker/gioui): typing notes respects the keybinding modifiers 2024-10-13 15:14:04 +03:00
5684185+vsariola@users.noreply.github.com
3fb7f07c2c feat(tracker/gioui): keybindings file is keybindings.yml, not .yaml 2024-10-13 14:54:42 +03:00
5684185+vsariola@users.noreply.github.com
10f021a497 feat: toggle button to duplicate non-unique patterns when changed
Closes #77.
2024-10-13 14:47:22 +03:00
5684185+vsariola@users.noreply.github.com
4c096a3fac refactor(tracker): rename Notetracking to Follow
Notetracking was used in two completely different meanings: the
pitch/bpm notetracking in the delay unit and the cursor follow in
when playing. The word for the second meaning was changed to Follow,
to avoid confusion.
2024-10-12 21:35:45 +03:00
5684185+vsariola@users.noreply.github.com
59c04ed4a1 refactor(tracker): shorten the names of model.PlayFrom... methods 2024-10-12 21:31:56 +03:00
5684185+vsariola@users.noreply.github.com
a6bb5c2afc feat(tracker): make keybindings user configurable
Closes #94, closes #151.
2024-10-12 21:08:30 +03:00
5684185+vsariola@users.noreply.github.com
773655ef9c fix(tracker/gioui): avoid deadlock while changing window title 2024-10-11 16:08:55 +03:00
5684185+vsariola@users.noreply.github.com
91b7850bf7 feat(tracker): change keyboard shortcuts to mimic old trackers 2024-10-11 15:31:54 +03:00
5684185+vsariola@users.noreply.github.com
b4a63ce362 feat(tracker/gioui): label identifying instrument MIDI channel
Closes #154.
2024-10-11 12:16:40 +03:00
5684185+vsariola@users.noreply.github.com
a94703deea fix(tracker/gioui): pressing a or 1 in hex mode created note off
Closes #162
2024-10-08 12:31:05 +03:00
5684185+vsariola@users.noreply.github.com
890ebe3294 refactor(tracker/gioui): use layout.Background, not layout.Stacked 2024-10-05 13:24:31 +03:00
5684185+vsariola@users.noreply.github.com
bf5579a2d2 build: upgrade to latest gioui 2024-10-05 12:34:02 +03:00
5684185+vsariola@users.noreply.github.com
4ee355bb45 fix(tracker/gioui): DPI scaling of the numeric updown icons
Closes #150.
2024-09-21 14:01:32 +03:00
5684185+vsariola@users.noreply.github.com
2b38e11643 feat: include version info in the binaries 2024-09-15 19:45:00 +03:00
5684185+vsariola@users.noreply.github.com
e49f699f62 feat(tracker/gioui): clicking a parameter slider (etc.) selects it
Closes #112.
2024-09-08 14:46:24 +03:00
5684185+vsariola@users.noreply.github.com
6fc9277113 fix(tracker): unit search gains focus when adding a unit on last row 2024-09-07 21:29:37 +03:00
5684185+vsariola@users.noreply.github.com
4e1fdf57d9 fix(tracker/gioui): advance row by step when inputting a note
Closes #144.
2024-09-07 17:45:32 +03:00
5684185+vsariola@users.noreply.github.com
59fb39d9b3 fix(tracker/gioui): move alert popups north to not overlay buttons
Closes #142.
2024-09-06 22:01:00 +03:00
5684185+vsariola@users.noreply.github.com
9cb573d965 feat(tracker/gioui): cursor indicates split bars can be resized
Closes #145.
2024-09-06 20:29:33 +03:00
5684185+vsariola@users.noreply.github.com
beb84d7652 fix(tracker/gioui): deleting a cell in the order list did not work 2024-03-14 20:37:09 +02:00
5684185+vsariola@users.noreply.github.com
e488cd391b fix(gioui): scroll wheel works in tables, not just table row titles 2024-03-02 00:40:06 +02:00
5684185+vsariola@users.noreply.github.com
07bf8f6cdf fix(gioui): draw cursor in front of play marker in order editor 2024-03-01 23:31:05 +02:00
5684185+vsariola@users.noreply.github.com
f0f391356c fix(gioui): arrow keys leave table row/col titles 2024-03-01 23:25:30 +02:00
5684185+vsariola@users.noreply.github.com
b18a284252 feat(gioui): + and - keys add/subtract elements in tables
Closes #65.
2024-03-01 22:43:27 +02:00
5684185+vsariola@users.noreply.github.com
1c020fffa3 refactor(gioui): update gioui to v0.5.0 2024-03-01 22:11:44 +02:00
5684185+vsariola@users.noreply.github.com
dc12f58082 feat(tracker): add ability to loop part of song during playback
Closes #128.
2024-02-20 19:10:15 +02:00
5684185+vsariola@users.noreply.github.com
aa7a2e56fa feat(gioui): flip the unit parameter slider scroll wheel behaviour
Closes #112.
2024-02-19 21:49:51 +02:00