Zrythm
a highly automated and intuitive digital audio workstation
Loading...
Searching...
No Matches
track_input_expander.h
Go to the documentation of this file.
1// clang-format off
2// SPDX-FileCopyrightText: © 2019-2020, 2023 Alexandros Theodotou <alex@zrythm.org>
3// SPDX-License-Identifier: LicenseRef-ZrythmLicense
4// clang-format on
5
10#ifndef __GUI_WIDGETS_TRACK_INPUT_EXPANDER_H__
11#define __GUI_WIDGETS_TRACK_INPUT_EXPANDER_H__
12
13#include "gui/widgets/two_col_expander_box.h"
14
15#include "gtk_wrapper.h"
16
17#define TRACK_INPUT_EXPANDER_WIDGET_TYPE \
18 (track_input_expander_widget_get_type ())
19G_DECLARE_FINAL_TYPE (
21 track_input_expander_widget,
22 Z,
23 TRACK_INPUT_EXPANDER_WIDGET,
24 TwoColExpanderBoxWidget);
25
26typedef struct _EditableLabelWidget EditableLabelWidget;
27typedef struct Track Track;
28typedef struct _KnobWidget KnobWidget;
29
36typedef struct _TrackInputExpanderWidget
37{
38 TwoColExpanderBoxWidget parent_instance;
39
41 GtkDropDown * midi_input;
42
44 GtkDropDown * stereo_l_input;
45
47 GtkDropDown * stereo_r_input;
48
50 GtkDropDown * midi_channels;
51
53 GtkSizeGroup * audio_input_size_group;
54
56 GtkToggleButton * mono;
57
59 GtkBox * gain_box;
60 KnobWidget * gain;
61
65
71void
72track_input_expander_widget_refresh (
74 Track * track);
75
79void
82 Track * track);
83
88#endif
void track_input_expander_widget_setup(TrackInputExpanderWidget *self, Track *track)
Sets up the TrackInputExpanderWidget.
GtkToggleButton * mono
Mono switch for audio tracks.
GtkDropDown * stereo_r_input
Track input port for audio R.
GtkSizeGroup * audio_input_size_group
Size group for audio inputs.
GtkDropDown * stereo_l_input
Track input port for audio L.
GtkDropDown * midi_input
Track input port for midi.
GtkDropDown * midi_channels
MIDI channels selector.
Track * track
Track the TrackInputExpanderWidget is associated with.
GtkBox * gain_box
Gain knob for audio tracks.
Track to be inserted into the Project's Tracklist.
Definition track.h:177