55 void add_channel_strips(int n)
56 {
57 // HBox for the channels
58 ch_box = elm_box_add(win);
59 elm_box_horizontal_set(ch_box, 1);
60 elm_win_resize_object_add(win, ch_box);
61 evas_object_size_hint_weight_set(ch_box, EVAS_HINT_EXPAND, EVAS_HINT_FILL);
62 evas_object_show(ch_box);
63
64 int i=0;
65 sl = calloc(n,sizeof(Evas_Object*));
66 aux = calloc(n,sizeof(int));
67 strip_box = calloc(n,sizeof(Evas_Object*));
68 pan = calloc(n,sizeof(Evas_Object*));
69 mute = calloc(n,sizeof(Evas_Object*));
70 for(i=0;i<n;i++){
71 // The volume fader
72 sl[i] = elm_slider_add(win);
73 elm_slider_unit_format_set(sl[i], "dB");
74 elm_slider_min_max_set(sl[i], 0, 2);
75 elm_slider_inverted_set(sl[i], 1);
76 elm_slider_value_set(sl[i], 1.0f);
77 elm_slider_horizontal_set(sl[i], 0);
78 elm_slider_indicator_format_set(sl[i], "%3.0f");
79 // The mute toggle
80 mute[i] = elm_toggle_add(win);
81 elm_toggle_label_set(mute[i], "mute");
82 evas_object_show(mute[i]);
83 // The Pan knob
84 pan[i] = elm_spinner_add(win);
85 elm_spinner_min_max_set(pan[i], 0.0, 100.0);
86 elm_spinner_value_set(pan[i],50);
87 evas_object_show(pan[i]);
88 // The channel strip
89 strip_box[i] = elm_box_add(win);
90 elm_box_homogenous_set(strip_box[i],2);
91 elm_box_pack_end(strip_box[i],mute[i]);
92 elm_box_pack_end(strip_box[i],pan[i]);
93 elm_box_pack_end(strip_box[i],sl[i]);
94 evas_object_show(strip_box[i]);
95 // Callbacks
96 elm_box_pack_end(ch_box, strip_box[i]);
97 aux[i]=i;
98 evas_object_smart_callback_add(pan[i], "changed", pan_drag, &aux[i]);
99 evas_object_smart_callback_add(sl[i], "changed", ch_drag, &aux[i]);
100 evas_object_show(sl[i]);
101 }
102 }