Add orientation parameter to routing_grid_label()
By adding an orientation parameter, then routing_grid_label() can be used for the Mixer I/O group labels as well.
This commit is contained in:
@@ -107,10 +107,20 @@ static void get_routing_snks(struct alsa_card *card) {
|
||||
assert(j == count);
|
||||
}
|
||||
|
||||
static void routing_grid_label(char *s, GtkGrid *g, GtkAlign align) {
|
||||
static void routing_grid_label(
|
||||
char *s,
|
||||
GtkGrid *g,
|
||||
GtkOrientation orientation,
|
||||
GtkAlign align
|
||||
) {
|
||||
GtkWidget *l = gtk_label_new(s);
|
||||
gtk_widget_set_halign(l, align);
|
||||
gtk_grid_attach(g, l, 0, 0, 1, 1);
|
||||
if (orientation == GTK_ORIENTATION_HORIZONTAL) {
|
||||
gtk_widget_set_valign(l, align);
|
||||
gtk_label_set_justify(GTK_LABEL(l), GTK_JUSTIFY_CENTER);
|
||||
} else {
|
||||
gtk_widget_set_halign(l, align);
|
||||
}
|
||||
}
|
||||
|
||||
// clear all the routing sinks
|
||||
@@ -329,16 +339,29 @@ static void create_routing_grid(struct alsa_card *card) {
|
||||
gtk_grid_set_spacing(routing_grid, 10);
|
||||
|
||||
routing_grid_label(
|
||||
"Hardware Inputs", GTK_GRID(card->routing_hw_in_grid), GTK_ALIGN_END
|
||||
"Hardware Inputs", GTK_GRID(card->routing_hw_in_grid),
|
||||
GTK_ORIENTATION_VERTICAL, GTK_ALIGN_END
|
||||
);
|
||||
routing_grid_label(
|
||||
"Hardware Outputs", GTK_GRID(card->routing_hw_out_grid), GTK_ALIGN_START
|
||||
"Hardware Outputs", GTK_GRID(card->routing_hw_out_grid),
|
||||
GTK_ORIENTATION_VERTICAL, GTK_ALIGN_START
|
||||
);
|
||||
routing_grid_label(
|
||||
"PCM Outputs", GTK_GRID(card->routing_pcm_in_grid), GTK_ALIGN_END
|
||||
"PCM Outputs", GTK_GRID(card->routing_pcm_in_grid),
|
||||
GTK_ORIENTATION_VERTICAL, GTK_ALIGN_END
|
||||
);
|
||||
routing_grid_label(
|
||||
"PCM Inputs", GTK_GRID(card->routing_pcm_out_grid), GTK_ALIGN_START
|
||||
"PCM Inputs", GTK_GRID(card->routing_pcm_out_grid),
|
||||
GTK_ORIENTATION_VERTICAL, GTK_ALIGN_START
|
||||
);
|
||||
routing_grid_label(
|
||||
"Mixer\nInputs", GTK_GRID(card->routing_mixer_in_grid),
|
||||
GTK_ORIENTATION_HORIZONTAL, GTK_ALIGN_CENTER
|
||||
);
|
||||
routing_grid_label(
|
||||
card->has_talkback ? "Mixer Outputs" : "Mixer\nOutputs",
|
||||
GTK_GRID(card->routing_mixer_out_grid),
|
||||
GTK_ORIENTATION_HORIZONTAL, GTK_ALIGN_CENTER
|
||||
);
|
||||
|
||||
GtkWidget *src_label = gtk_label_new("↑\nSources →");
|
||||
@@ -832,13 +855,6 @@ static void add_routing_widgets(
|
||||
return;
|
||||
}
|
||||
|
||||
GtkWidget *l_mixer_in = gtk_label_new("Mixer\nInputs");
|
||||
gtk_label_set_justify(GTK_LABEL(l_mixer_in), GTK_JUSTIFY_CENTER);
|
||||
gtk_grid_attach(
|
||||
GTK_GRID(card->routing_mixer_in_grid), l_mixer_in,
|
||||
0, 0, 1, 1
|
||||
);
|
||||
|
||||
// start at 1 to skip the "Off" input
|
||||
for (int i = 1; i < card->routing_srcs->len; i++) {
|
||||
struct routing_src *r_src = &g_array_index(
|
||||
@@ -883,15 +899,6 @@ static void add_routing_widgets(
|
||||
}
|
||||
}
|
||||
|
||||
GtkWidget *l_mixer_out = gtk_label_new(
|
||||
card->has_talkback ? "Mixer Outputs" : "Mixer\nOutputs"
|
||||
);
|
||||
gtk_label_set_justify(GTK_LABEL(l_mixer_out), GTK_JUSTIFY_CENTER);
|
||||
gtk_grid_attach(
|
||||
GTK_GRID(card->routing_mixer_out_grid), l_mixer_out,
|
||||
0, 0, 1, 1
|
||||
);
|
||||
|
||||
if (card->has_talkback) {
|
||||
GtkWidget *l_talkback = gtk_label_new("Talkback");
|
||||
gtk_widget_set_tooltip_text(
|
||||
|
||||
Reference in New Issue
Block a user