[email protected]
77b27257fe
fix(tracker): Player routes MIDImsgs so always handled in same block
2026-02-03 21:20:01 +02:00
[email protected]
f2ef57a845
feat(tracker): ability to bind MIDI controllers to parameters
...
Closes #152
2026-02-01 12:07:00 +02:00
[email protected]
4bb5df9c87
feat(tracker): enum-style values and menus to choose one option
2026-01-31 13:57:09 +02:00
[email protected]
86ca3fb300
refactor(tracker): group Model methods, with each group in one source file
2026-01-27 22:16:14 +02:00
[email protected]
1693d7ed5e
refactor(tracker): make Model methods return List, avoiding .List()
2026-01-23 22:42:25 +02:00
[email protected]
fa9654d311
refactor(tracker/gioui): Surface is given relative Height, not Gray
2025-11-02 15:52:51 +02:00
[email protected]
d78ef98e73
refactor(tracker/gioui): upgrade gio & store Tracker to gtx.Values
2025-06-25 18:54:00 +03:00
[email protected]
08c36ed462
feat(tracker/gioui): new tab order logic and refactor instrument editor
2025-06-25 16:32:56 +03:00
[email protected]
17ca15b205
refactor(tracker/gioui): minor optimizations in NoteEditor
2025-06-24 19:04:47 +03:00
[email protected]
31007515b5
refactor(tracker/gioui): avoid heap escapes in NumericUpDown
2025-06-23 09:43:10 +03:00
[email protected]
db2ccf977d
refactor(tracker/gioui): rewrote Button(s) to bind to Model during layout
...
The old mechanism made it difficult to follow exactly what happens
when a button was clicked, because the Action/Bool that gets
executed / toggled was declared ages ago, in the constructor. In the
new mechanism, the Action / Bool is bound to the button at the last
minute, right before Layout. ActionButton, ToggleButton,
ActionIconButton and ToggleIconButton were done to avoid heap
escapes: if the corresponding functions woudl've returned
layout.Widget, a heap allocation would've been needed.
2025-06-23 08:56:37 +03:00
[email protected]
beef8fe1e0
refactor(tracker/gioui): bind tracker.Int to NumericUpDown on Layout
2025-06-21 11:45:31 +03:00
[email protected]
283fbc1171
feat(tracker): rework the MIDI input and note event handling
2025-06-11 19:14:11 +03:00
[email protected]
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
[email protected]
74f37318d6
refactor(tracker): refactor IntData to IntValue, following Bool example
2025-06-11 19:14:11 +03:00
[email protected]
fb3a0da3ed
refactor(tracker): make Bool have separate BoolValue and Enabler
2025-06-11 19:14:11 +03:00
[email protected]
afb1fee4ed
feat(tracker/gioui): add theme.yml which contains all styling
2025-05-20 19:02:16 +03:00
[email protected]
40be82de46
feat(tracker/gioui): refactor & rework playbar with the play buttons
2025-04-27 11:34:00 +03:00
[email protected]
42c95ab8ee
feat(tracker/gioui): rework the labels of numeric updowns
2025-04-27 09:07:46 +03:00
qm210 and Veikko Sariola
b255a68ebc
fix: changes after review (see PR #176 )
2024-11-10 00:02:13 +02:00
qm210 and Veikko Sariola
d517576a65
feat: introduce "cache" for derived model information
2024-11-10 00:02:13 +02:00
[email protected]
3eb4d86d52
style(tracker/gioui): remove old commented code
2024-11-02 17:00:56 +02:00
qm210 and Veikko Sariola
8dfadacafe
feat: midi note input for the tracker
2024-10-22 07:56:36 +03:00
[email protected]
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
[email protected]
1c42a51cc6
refactor(tracker): use built-in min & max instead of intMin & intMax
2024-10-18 23:43:27 +03:00
[email protected]
04ca0a3f6e
fix(tracker/gioui): changing a hex played the previous value
2024-10-15 13:08:02 +03:00
[email protected]
08386323ed
fix(tracker/gioui): all key filters for hexadecimals in note editor
2024-10-15 12:56:10 +03:00
[email protected]
5099c61705
chore: fix linter problems in work space (remove unuseds etc.)
2024-10-15 09:18:41 +03:00
[email protected]
160eb8eea9
fix(tracker/gioui): typing notes respects the keybinding modifiers
2024-10-13 15:14:04 +03:00
[email protected]
10f021a497
feat: toggle button to duplicate non-unique patterns when changed
...
Closes #77 .
2024-10-13 14:47:22 +03:00
[email protected]
a6bb5c2afc
feat(tracker): make keybindings user configurable
...
Closes #94 , closes #151 .
2024-10-12 21:08:30 +03:00
[email protected]
a94703deea
fix(tracker/gioui): pressing a or 1 in hex mode created note off
...
Closes #162
2024-10-08 12:31:05 +03:00
[email protected]
4e1fdf57d9
fix(tracker/gioui): advance row by step when inputting a note
...
Closes #144 .
2024-09-07 17:45:32 +03:00
[email protected]
1c020fffa3
refactor(gioui): update gioui to v0.5.0
2024-03-01 22:11:44 +02:00
[email protected]
dc12f58082
feat(tracker): add ability to loop part of song during playback
...
Closes #128 .
2024-02-20 19:10:15 +02:00
[email protected]
d92426a100
feat!: rewrote the GUI and model for better testability
...
The Model was getting unmaintanable mess. This is an attempt to refactor/rewrite the Model so that data of certain type is exposed in standardized way, offering certain standard manipulations for that data type, and on the GUI side, certain standard widgets to tied to that data.
This rewrite closes #72 , #106 and #120 .
2024-02-17 18:16:06 +02:00