xref: /aosp_15_r20/external/oboe/samples/drumthumper/src/main/res/layout/drumthumper_activity.xml (revision 05767d913155b055644481607e6fa1e35e2fe72c)
1<?xml version="1.0" encoding="utf-8"?>
2<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
3    xmlns:app="http://schemas.android.com/apk/res-auto"
4    xmlns:tools="http://schemas.android.com/tools"
5    android:layout_width="match_parent"
6    android:layout_height="wrap_content"
7    android:orientation="vertical"
8    tools:context="com.plausiblesoftware.drumthumper.DrumThumperActivity">
9
10    <LinearLayout
11        android:layout_width="match_parent"
12        android:layout_height="128dp"
13        android:orientation="horizontal">
14
15        <LinearLayout
16            android:layout_width="wrap_content"
17            android:layout_height="128dp"
18            android:layout_weight=".5"
19            android:orientation="vertical">
20
21            <com.plausiblesoftware.drumthumper.TriggerPad
22                android:id="@+id/kickPad"
23                android:layout_width="match_parent"
24                android:layout_height="match_parent"
25                android:layout_weight="1"
26                android:padding="5dp"
27                android:text="Kick" />
28
29            <LinearLayout
30                android:layout_width="match_parent"
31                android:layout_height="wrap_content"
32                android:orientation="vertical"
33                android:id="@+id/kickMixControls">
34                <LinearLayout
35                    android:layout_width="match_parent"
36                    android:layout_height="wrap_content"
37                    android:orientation="horizontal">
38
39                    <TextView
40                        android:layout_width="wrap_content"
41                        android:layout_height="wrap_content"
42                        android:text="P:"/>
43
44                    <SeekBar
45                        android:id="@+id/kickPan"
46                        style="@android:style/Widget.DeviceDefault.SeekBar"
47                        android:layout_width="match_parent"
48                        android:layout_height="20dp"
49                        android:layout_marginTop="5dp"
50                        android:max="200" />
51                </LinearLayout>
52
53                <LinearLayout
54                    android:layout_width="match_parent"
55                    android:layout_height="wrap_content"
56                    android:orientation="horizontal">
57
58                    <TextView
59                        android:layout_width="wrap_content"
60                        android:layout_height="wrap_content"
61                        android:text="G:"/>
62
63                    <SeekBar
64                        android:id="@+id/kickGain"
65                        style="@android:style/Widget.DeviceDefault.SeekBar"
66                        android:layout_width="match_parent"
67                        android:layout_height="20dp"
68                        android:layout_marginTop="5dp"
69                        android:max="200" />
70                </LinearLayout>
71            </LinearLayout>
72        </LinearLayout>
73
74        <LinearLayout
75            android:layout_width="wrap_content"
76            android:layout_height="128dp"
77            android:layout_weight=".5"
78            android:orientation="vertical">
79
80            <com.plausiblesoftware.drumthumper.TriggerPad
81                android:id="@+id/snarePad"
82                android:layout_width="wrap_content"
83                android:layout_height="match_parent"
84                android:layout_weight="1"
85                android:padding="5dp"
86                android:text="Snare" />
87
88            <LinearLayout
89                android:layout_width="match_parent"
90                android:layout_height="wrap_content"
91                android:orientation="vertical"
92                android:id="@+id/snareMixControls">
93                <LinearLayout
94                    android:layout_width="match_parent"
95                    android:layout_height="wrap_content"
96                    android:orientation="horizontal">
97
98                    <TextView
99                        android:layout_width="wrap_content"
100                        android:layout_height="wrap_content"
101                        android:text="P:"/>
102
103                    <SeekBar
104                        android:id="@+id/snarePan"
105                        style="@android:style/Widget.DeviceDefault.SeekBar"
106                        android:layout_width="match_parent"
107                        android:layout_height="20dp"
108                        android:layout_marginTop="5dp"
109                        android:max="200" />
110                </LinearLayout>
111
112                <LinearLayout
113                    android:layout_width="match_parent"
114                    android:layout_height="wrap_content"
115                    android:orientation="horizontal">
116
117                    <TextView
118                        android:layout_width="wrap_content"
119                        android:layout_height="wrap_content"
120                        android:text="G:"/>
121
122                    <SeekBar
123                        android:id="@+id/snareGain"
124                        style="@android:style/Widget.DeviceDefault.SeekBar"
125                        android:layout_width="match_parent"
126                        android:layout_height="20dp"
127                        android:layout_marginTop="5dp"
128                        android:max="200" />
129
130                </LinearLayout>
131            </LinearLayout>
132        </LinearLayout>
133    </LinearLayout>
134
135    <LinearLayout
136        android:layout_width="match_parent"
137        android:layout_height="128dp"
138        android:orientation="horizontal">
139
140        <LinearLayout
141            android:layout_width="wrap_content"
142            android:layout_height="128dp"
143            android:layout_weight=".5"
144            android:orientation="vertical">
145
146            <com.plausiblesoftware.drumthumper.TriggerPad
147                android:id="@+id/hihatOpenPad"
148                android:layout_width="match_parent"
149                android:layout_height="match_parent"
150                android:layout_weight="1"
151                android:padding="5dp"
152                android:text="Open Hat" />
153
154            <LinearLayout
155                android:layout_width="match_parent"
156                android:layout_height="wrap_content"
157                android:orientation="vertical"
158                android:id="@+id/hihatOpenMixControls">
159                <LinearLayout
160                    android:layout_width="match_parent"
161                    android:layout_height="wrap_content"
162                    android:orientation="horizontal">
163
164                    <TextView
165                        android:layout_width="wrap_content"
166                        android:layout_height="wrap_content"
167                        android:text="P:"/>
168
169                    <SeekBar
170                        android:id="@+id/hihatOpenPan"
171                        style="@android:style/Widget.DeviceDefault.SeekBar"
172                        android:layout_width="match_parent"
173                        android:layout_height="20dp"
174                        android:layout_marginTop="5dp"
175                        android:max="200" />
176                </LinearLayout>
177
178                <LinearLayout
179                    android:layout_width="match_parent"
180                    android:layout_height="wrap_content"
181                    android:orientation="horizontal">
182
183                    <TextView
184                        android:layout_width="wrap_content"
185                        android:layout_height="wrap_content"
186                        android:text="G:"/>
187
188                    <SeekBar
189                        android:id="@+id/hihatOpenGain"
190                        style="@android:style/Widget.DeviceDefault.SeekBar"
191                        android:layout_width="match_parent"
192                        android:layout_height="20dp"
193                        android:layout_marginTop="5dp"
194                        android:max="200" />
195                </LinearLayout>
196            </LinearLayout>
197        </LinearLayout>
198
199        <LinearLayout
200            android:layout_width="wrap_content"
201            android:layout_height="128dp"
202            android:layout_weight=".5"
203            android:orientation="vertical">
204
205            <com.plausiblesoftware.drumthumper.TriggerPad
206                android:id="@+id/hihatClosedPad"
207                android:layout_width="match_parent"
208                android:layout_height="match_parent"
209                android:layout_weight="1"
210                android:padding="5dp"
211                android:text="Closed Hat" />
212
213            <LinearLayout
214                android:layout_width="match_parent"
215                android:layout_height="wrap_content"
216                android:orientation="vertical"
217                android:id="@+id/hihatClosedMixControls">
218                <LinearLayout
219                    android:layout_width="match_parent"
220                    android:layout_height="wrap_content"
221                    android:orientation="horizontal">
222
223                    <TextView
224                        android:layout_width="wrap_content"
225                        android:layout_height="wrap_content"
226                        android:text="P:"/>
227
228                    <SeekBar
229                        android:id="@+id/hihatClosedPan"
230                        style="@android:style/Widget.DeviceDefault.SeekBar"
231                        android:layout_width="match_parent"
232                        android:layout_height="20dp"
233                        android:layout_marginTop="5dp"
234                        android:max="200" />
235                </LinearLayout>
236
237                <LinearLayout
238                    android:layout_width="match_parent"
239                    android:layout_height="wrap_content"
240                    android:orientation="horizontal">
241
242                    <TextView
243                        android:layout_width="wrap_content"
244                        android:layout_height="wrap_content"
245                        android:text="G:"/>
246
247                    <SeekBar
248                        android:id="@+id/hihatClosedGain"
249                        style="@android:style/Widget.DeviceDefault.SeekBar"
250                        android:layout_width="match_parent"
251                        android:layout_height="20dp"
252                        android:layout_marginTop="5dp"
253                        android:max="200" />
254            </LinearLayout>
255            </LinearLayout>
256        </LinearLayout>
257    </LinearLayout>
258
259    <LinearLayout
260        android:layout_width="match_parent"
261        android:layout_height="128dp"
262        android:orientation="horizontal">
263
264        <LinearLayout
265            android:layout_width="wrap_content"
266            android:layout_height="128dp"
267            android:layout_weight=".5"
268            android:orientation="vertical">
269
270            <com.plausiblesoftware.drumthumper.TriggerPad
271                android:id="@+id/midTomPad"
272                android:layout_width="match_parent"
273                android:layout_height="match_parent"
274                android:layout_weight="1"
275                android:padding="5dp"
276                android:text="Mid Tom" />
277
278            <LinearLayout
279                android:layout_width="match_parent"
280                android:layout_height="wrap_content"
281                android:orientation="vertical"
282                android:id="@+id/midTomMixControls">
283                <LinearLayout
284                    android:layout_width="match_parent"
285                    android:layout_height="wrap_content"
286                    android:orientation="horizontal">
287
288                    <TextView
289                        android:layout_width="wrap_content"
290                        android:layout_height="wrap_content"
291                        android:text="P:"/>
292
293                    <SeekBar
294                        android:id="@+id/midTomPan"
295                        style="@android:style/Widget.DeviceDefault.SeekBar"
296                        android:layout_width="match_parent"
297                        android:layout_height="20dp"
298                        android:layout_marginTop="5dp"
299                        android:max="200" />
300                </LinearLayout>
301
302                <LinearLayout
303                    android:layout_width="match_parent"
304                    android:layout_height="wrap_content"
305                    android:orientation="horizontal">
306
307                    <TextView
308                        android:layout_width="wrap_content"
309                        android:layout_height="wrap_content"
310                        android:text="G:"/>
311
312                    <SeekBar
313                        android:id="@+id/midTomGain"
314                        style="@android:style/Widget.DeviceDefault.SeekBar"
315                        android:layout_width="match_parent"
316                        android:layout_height="20dp"
317                        android:layout_marginTop="5dp"
318                        android:max="200" />
319                </LinearLayout>
320            </LinearLayout>
321        </LinearLayout>
322
323        <LinearLayout
324            android:layout_width="wrap_content"
325            android:layout_height="128dp"
326            android:layout_weight=".5"
327            android:orientation="vertical">
328
329            <com.plausiblesoftware.drumthumper.TriggerPad
330                android:id="@+id/lowTomPad"
331                android:layout_width="match_parent"
332                android:layout_height="match_parent"
333                android:layout_weight="1"
334                android:padding="5dp"
335                android:text="Low Tom" />
336
337            <LinearLayout
338                android:layout_width="match_parent"
339                android:layout_height="wrap_content"
340                android:orientation="vertical"
341                android:id="@+id/lowTomMixControls">
342                <LinearLayout
343                    android:layout_width="match_parent"
344                    android:layout_height="wrap_content"
345                    android:orientation="horizontal">
346
347                    <TextView
348                        android:layout_width="wrap_content"
349                        android:layout_height="wrap_content"
350                        android:text="P:"/>
351
352                    <SeekBar
353                        android:id="@+id/lowTomPan"
354                        style="@android:style/Widget.DeviceDefault.SeekBar"
355                        android:layout_width="match_parent"
356                        android:layout_height="20dp"
357                        android:layout_marginTop="5dp"
358                        android:max="200" />
359                </LinearLayout>
360
361                <LinearLayout
362                    android:layout_width="match_parent"
363                    android:layout_height="wrap_content"
364                    android:orientation="horizontal">
365
366                    <TextView
367                        android:layout_width="wrap_content"
368                        android:layout_height="wrap_content"
369                        android:text="G:"/>
370
371                    <SeekBar
372                        android:id="@+id/lowTomGain"
373                        style="@android:style/Widget.DeviceDefault.SeekBar"
374                        android:layout_width="match_parent"
375                        android:layout_height="20dp"
376                        android:layout_marginTop="5dp"
377                        android:max="200" />
378                </LinearLayout>
379            </LinearLayout>
380        </LinearLayout>
381    </LinearLayout>
382
383    <LinearLayout
384        android:layout_width="match_parent"
385        android:layout_height="128dp"
386        android:orientation="horizontal">
387
388        <LinearLayout
389            android:layout_width="wrap_content"
390            android:layout_height="128dp"
391            android:layout_weight=".5"
392            android:orientation="vertical">
393
394            <com.plausiblesoftware.drumthumper.TriggerPad
395                android:id="@+id/ridePad"
396                android:layout_width="match_parent"
397                android:layout_height="match_parent"
398                android:layout_weight="1"
399                android:padding="5dp"
400                android:text="Ride" />
401
402            <LinearLayout
403                android:layout_width="match_parent"
404                android:layout_height="wrap_content"
405                android:orientation="vertical"
406                android:id="@+id/rideMixControls">
407                <LinearLayout
408                    android:layout_width="match_parent"
409                    android:layout_height="wrap_content"
410                    android:orientation="horizontal">
411
412                    <TextView
413                        android:layout_width="wrap_content"
414                        android:layout_height="wrap_content"
415                        android:text="P:"/>
416
417                    <SeekBar
418                        android:id="@+id/ridePan"
419                        style="@android:style/Widget.DeviceDefault.SeekBar"
420                        android:layout_width="match_parent"
421                        android:layout_height="20dp"
422                        android:layout_marginTop="5dp"
423                        android:max="200" />
424                </LinearLayout>
425
426                <LinearLayout
427                    android:layout_width="match_parent"
428                    android:layout_height="wrap_content"
429                    android:orientation="horizontal">
430
431                    <TextView
432                        android:layout_width="wrap_content"
433                        android:layout_height="wrap_content"
434                        android:text="G:"/>
435
436                    <SeekBar
437                        android:id="@+id/rideGain"
438                        style="@android:style/Widget.DeviceDefault.SeekBar"
439                        android:layout_width="match_parent"
440                        android:layout_height="20dp"
441                        android:layout_marginTop="5dp"
442                        android:max="200" />
443                </LinearLayout>
444            </LinearLayout>
445        </LinearLayout>
446
447        <LinearLayout
448            android:layout_width="wrap_content"
449            android:layout_height="128dp"
450            android:layout_weight=".5"
451            android:orientation="vertical">
452
453            <com.plausiblesoftware.drumthumper.TriggerPad
454                android:id="@+id/crashPad"
455                android:layout_width="match_parent"
456                android:layout_height="match_parent"
457                android:layout_weight="1"
458                android:padding="5dp"
459                android:text="Crash" />
460
461            <LinearLayout
462                android:layout_width="match_parent"
463                android:layout_height="wrap_content"
464                android:orientation="vertical"
465                android:id="@+id/crashMixControls">
466                <LinearLayout
467                    android:layout_width="match_parent"
468                    android:layout_height="wrap_content"
469                    android:orientation="horizontal">
470
471                    <TextView
472                        android:layout_width="wrap_content"
473                        android:layout_height="wrap_content"
474                        android:text="P:"/>
475
476                    <SeekBar
477                        android:id="@+id/crashPan"
478                        style="@android:style/Widget.DeviceDefault.SeekBar"
479                        android:layout_width="match_parent"
480                        android:layout_height="20dp"
481                        android:layout_marginTop="5dp"
482                        android:max="200" />
483                </LinearLayout>
484
485                <LinearLayout
486                    android:layout_width="match_parent"
487                    android:layout_height="wrap_content"
488                    android:orientation="horizontal">
489
490                    <TextView
491                        android:layout_width="wrap_content"
492                        android:layout_height="wrap_content"
493                        android:text="G:"/>
494
495                    <SeekBar
496                        android:id="@+id/crashGain"
497                        style="@android:style/Widget.DeviceDefault.SeekBar"
498                        android:layout_width="match_parent"
499                        android:layout_height="20dp"
500                        android:layout_marginTop="5dp"
501                        android:max="200" />
502                </LinearLayout>
503            </LinearLayout>
504        </LinearLayout>
505    </LinearLayout>
506    <Button
507        android:layout_width="match_parent"
508        android:layout_height="wrap_content"
509        android:text="Hide/Show Mix Controls"
510        android:id="@+id/mixCtrlBtn"/>
511</LinearLayout>
512