Commit Graph

246 Commits

Author SHA1 Message Date
Geoffrey D. Bennett
793523b0a7 Add some red and grey 2024-02-20 23:26:10 +10:30
Geoffrey D. Bennett
eae7cdc204 Remove now-unused widget-combo 2024-02-20 23:26:10 +10:30
Geoffrey D. Bennett
e0e591db3e Update 3rd Gen Solo Direct Monitor control to match 4th Gen 2024-02-20 23:26:10 +10:30
Geoffrey D. Bennett
b8ca52e7f2 Add power status control for 4th Gen 4i4 2024-02-20 23:26:10 +10:30
Geoffrey D. Bennett
b912ccbf9c Add 4th Gen Solo/2i2 Direct Monitor controls 2024-02-20 23:26:10 +10:30
Geoffrey D. Bennett
1411ff2c3b Switch Clock Source to widget-drop-down 2024-02-20 23:26:10 +10:30
Geoffrey D. Bennett
bc9d8867f3 Add widget-drop-down for Air 2024-02-20 23:26:10 +10:30
Geoffrey D. Bennett
ade852163b Add CSS classes to controls and add more colour 2024-02-20 23:26:10 +10:30
Geoffrey D. Bennett
1caa75a7d2 Move 4th Gen Solo Air control up to be next to Inst control 2024-02-20 23:26:10 +10:30
Geoffrey D. Bennett
56054c2634 Rewrite choose_line_colour() to work with a dark background
Use HSL with fixed saturation/lightness, and a hue based on the sink
index.
2024-02-20 23:26:10 +10:30
Geoffrey D. Bennett
36f724c66c Use CSS to set dark colour scheme 2024-02-20 23:26:10 +10:30
Geoffrey D. Bennett
d0b7c086ca Remove "Analogue" from small Gen 3 device input labels 2024-02-20 23:26:10 +10:30
Geoffrey D. Bennett
54b99aca29 Move label into boolean controls and use button state to show status
Rather than having a label "Air" and the button toggle between "Off"
and "On", have the button just be "Air" and no separate label.
2024-02-20 23:26:10 +10:30
Geoffrey D. Bennett
099e50b91e Remove bool_text from struct alsa_elem
Store the text in the boolean/dual widget private data.
2024-02-20 23:26:10 +10:30
Geoffrey D. Bennett
e655ee39ce Make GtkDial dimmer if insensitive 2024-02-20 23:26:10 +10:30
Geoffrey D. Bennett
7c44f15428 Make GtkDial look better 2024-02-20 23:26:09 +10:30
Geoffrey D. Bennett
df5d0960dd Add support for piecewise linear interpolation taper to GtkDial
This commit adds support for piecewise linear interpolation tapers to
GtkDial and the gain widget so that the 4th Gen 4i4 volume knob taper
can be modelled correctly.
2024-02-11 21:46:22 +10:30
Geoffrey D. Bennett
492c348897 Add configurable taper to GtkDial
The taper was previously set to a log function which matched the
Clarett volume knob. Add linear option to match the Scarlett 4th Gen
input gain knobs and hardware level meters.
2024-02-08 19:04:53 +10:30
Geoffrey D. Bennett
189b9ff6f6 Move valp clamp and scale from calc_valp_log() to calc_valp() 2024-02-08 18:08:34 +10:30
Geoffrey D. Bennett
a77cb0e258 Remove inline from functions in gtkdial.c 2024-02-08 18:08:34 +10:30
Geoffrey D. Bennett
64ca9f78da Fix typo range->dial in gtkdial.[ch] 2024-02-08 18:08:34 +10:30
Geoffrey D. Bennett
d91c9d5687 Add page argument to gtk_dial_new_with_range()
Make gain widget page_incr 3dB.
2024-02-08 18:08:34 +10:30
Geoffrey D. Bennett
1164845b3c Allow for continuous dials
Update gtk_dial_new_with_range() to set round_digits to -1 if step is
zero.

Update create_levels_controls() to set step to zero.
2024-02-08 18:08:34 +10:30
Geoffrey D. Bennett
e40ce4d5ad Fix gtk_dial_new_with_range() to use calculated round_digits 2024-02-08 18:08:34 +10:30
Geoffrey D. Bennett
fcdbc60f16 Add scale to widget-gain.c struct gain 2024-02-08 18:08:34 +10:30
Geoffrey D. Bennett
3740d7ee2d Fix GtkDial:zero_db property comment 2024-02-08 18:08:34 +10:30
Geoffrey D. Bennett
28604f08a3 Reformat gtkdial.c to match rest of code 2024-02-08 18:08:34 +10:30
Geoffrey D. Bennett
b646bc92cc Remove irrelevant GDK_AVAILABLE_IN_ALL from gtkdial.h
GDK_AVAILABLE_IN_ALL is for core GDK/GTK classes, not user-defined
ones.
2024-02-08 18:08:34 +10:30
Geoffrey D. Bennett
9587e2f494 Remove unused guint8 and gsize from gtkdial.c 2024-02-08 18:08:34 +10:30
Geoffrey D. Bennett
2115a26d9d Remove unused GtkDialFormatValueFunc from gtkdial.h 2024-02-08 18:08:34 +10:30
Geoffrey D. Bennett
b2823e79be Bump copyright year 2024-02-08 18:08:34 +10:30
Geoffrey D. Bennett
4a123f5df6 Simplify GtkDial calculations 2024-02-08 18:07:44 +10:30
Geoffrey D. Bennett
bd8f812e01 Fix widget-combo to check if the alsa elem is writable 2024-02-05 20:04:58 +10:30
Geoffrey D. Bennett
6923a3ddb0 Don't round level meter values passed to GtkDial 2024-02-05 20:04:58 +10:30
Geoffrey D. Bennett
20c4ff5559 Display -inf when volume/gain controls are at zero/off 2024-02-05 20:04:58 +10:30
Geoffrey D. Bennett
770ce1cc23 Add bindings for pgup/pgdn/home/end to GtkDial 2024-02-05 20:04:58 +10:30
Geoffrey D. Bennett
1ebd6de6a1 Add missing GtkDial scroll_begin() implementation 2024-02-05 20:04:58 +10:30
Geoffrey D. Bennett
047fb72394 Add 4th Gen 4i4 headphone volume knob control 2024-02-05 20:04:58 +10:30
Geoffrey D. Bennett
b35fa3cf50 Add input select widget for 4th Gen 2i2 and 4i4 2024-02-05 20:04:58 +10:30
Geoffrey D. Bennett
47034d7901 Remove widgets from struct alsa_elem and add data to callbacks
Rather than having widget/widget2/widget_callback fields in the struct
alsa_elem, have a list of callbacks and allow private data to be
passed to callbacks.
2024-02-05 20:04:58 +10:30
Geoffrey D. Bennett
d56a1d34ff Add 4th Gen input controls 2024-02-05 20:04:58 +10:30
Geoffrey D. Bennett
63068ed9c7 Explicitly order main window controls
Rather than looping through the ALSA controls and creating them in
that order, create them in a specific order.
2024-02-05 20:04:56 +10:30
Geoffrey D. Bennett
2eb8e0b7cb Make boolean widget boolify value from alsa_get_elem_value()
Make sure the value is 0/1 as it's used as an index into
elem->bool_text[].
2024-02-05 20:03:10 +10:30
Geoffrey D. Bennett
0347d25fc9 Center-align text in combo boxes 2024-02-05 20:03:10 +10:30
Geoffrey D. Bennett
9a365000ad Combine gain and volume widgets
Remove volume widget and make the gain widget choose the appropriate
format string.
2024-02-05 20:03:10 +10:30
Geoffrey D. Bennett
be458afcc4 Remove hard-coded values from widget-gain.c and widget-volume.c
Update alsa-sim.c and alsa.c to read the TLV info, and update the gain
and volume widgets to use that info rather than hard-coding the
min/max values.
2024-02-05 20:03:10 +10:30
Geoffrey D. Bennett
197f469bd8 Allow for phantom power per-channel 2024-02-05 20:03:10 +10:30
Geoffrey D. Bennett
658f946202 Add support for routing the Gen 4 DSP I/O 2024-02-05 20:03:10 +10:30
Geoffrey D. Bennett
dfa40c79b0 Add margin to socket widget 2024-02-05 20:03:10 +10:30
Geoffrey D. Bennett
93f7a32ea5 Fix Presets button to be centered
The Presets button was filling the available space. It looks better
using GTK_ALIGN_CENTER instead.
2024-02-05 20:03:10 +10:30