1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-27 02:37:36 +00:00

Piano: Expose multi-track functionality

This commit adds some actions for creating and cycling through tracks.

set_octave_and_ensure_note_change() was refactored to allow switching
tracks to implement the same behaviour.

KnobsWidget is getting pretty bad.
This commit is contained in:
William McPherson 2020-06-17 19:34:25 +10:00 committed by Andreas Kling
parent ee52572ca1
commit 34ee76984c
5 changed files with 69 additions and 21 deletions

View file

@ -42,6 +42,8 @@ class MainWidget final : public GUI::Widget {
public:
virtual ~MainWidget() override;
void add_actions(GUI::Menu&);
void set_octave_and_ensure_note_change(Direction);
private:
@ -54,6 +56,9 @@ private:
void note_key_action(int key_code, Switch);
void special_key_action(int key_code);
void turn_off_pressed_keys();
void turn_on_pressed_keys();
TrackManager& m_track_manager;
RefPtr<WaveWidget> m_wave_widget;