/* * Copyright (c) 2018-2020, Andreas Kling * Copyright (c) 2019-2020, William McPherson * Copyright (c) 2022, the SerenityOS developers. * * SPDX-License-Identifier: BSD-2-Clause */ #pragma once #include "ProcessorParameterWidget/ParameterWidget.h" #include #include #include #include #include #include class TrackManager; class MainWidget; class KnobsWidget final : public GUI::Frame { C_OBJECT(KnobsWidget) public: virtual ~KnobsWidget() override = default; void update_knobs(); private: KnobsWidget(TrackManager&, MainWidget&); TrackManager& m_track_manager; MainWidget& m_main_widget; RefPtr m_octave_container; RefPtr m_octave_knob; RefPtr m_octave_value; NonnullRefPtrVector m_parameter_widgets; bool m_change_underlying { true }; };