Newer
Older
music / app / src / main / res / layout / fragment_play.xml
  1. <?xml version="1.0" encoding="utf-8"?><!--
  2. ~ Copyright (C) 2022 Lukas Eisenhauer
  3. ~
  4. ~ This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or(at your option) any later version.
  5. ~
  6. ~ This program is distributed in the hope that it will be useful,but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
  7. ~
  8. ~ You should have received a copy of the GNU General Public License along with this program. If not, see <https://www.gnu.org/licenses/>.
  9. -->
  10.  
  11. <androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
  12. xmlns:app="http://schemas.android.com/apk/res-auto"
  13. xmlns:tools="http://schemas.android.com/tools"
  14. android:layout_width="match_parent"
  15. android:layout_height="match_parent"
  16. tools:context=".PlayFragment">
  17.  
  18. <RadioGroup
  19. android:id="@+id/beatIndicator"
  20. android:layout_width="0dp"
  21. android:layout_height="wrap_content"
  22. android:layout_marginTop="32dp"
  23. android:orientation="horizontal"
  24. app:layout_constraintEnd_toEndOf="parent"
  25. app:layout_constraintStart_toStartOf="parent"
  26. app:layout_constraintTop_toBottomOf="@+id/tempoSlider"
  27. tools:layout_conversion_absoluteHeight="0dp"
  28. tools:layout_conversion_absoluteWidth="379dp" />
  29.  
  30. <com.google.android.material.floatingactionbutton.FloatingActionButton
  31. android:id="@+id/playButton"
  32. android:layout_width="wrap_content"
  33. android:layout_height="wrap_content"
  34. android:layout_marginTop="16dp"
  35. android:clickable="true"
  36. android:contentDescription="@string/play_button_description"
  37. android:src="@android:drawable/ic_media_play"
  38. app:fabSize="normal"
  39. app:layout_constraintEnd_toEndOf="parent"
  40. app:layout_constraintStart_toStartOf="parent"
  41. app:layout_constraintTop_toTopOf="parent"
  42. tools:layout_conversion_absoluteHeight="56dp"
  43. tools:layout_conversion_absoluteWidth="56dp" />
  44.  
  45. <com.google.android.material.floatingactionbutton.FloatingActionButton
  46. android:id="@+id/reverseMeasureButton"
  47. android:layout_width="wrap_content"
  48. android:layout_height="wrap_content"
  49. android:layout_marginTop="20dp"
  50. android:layout_marginEnd="16dp"
  51. android:clickable="true"
  52. android:contentDescription="@string/reverse_measure"
  53. android:src="@android:drawable/ic_media_previous"
  54. app:fabSize="mini"
  55. app:layout_constraintEnd_toStartOf="@+id/playButton"
  56. app:layout_constraintTop_toTopOf="parent"
  57. tools:layout_conversion_absoluteHeight="56dp"
  58. tools:layout_conversion_absoluteWidth="56dp" />
  59.  
  60. <com.google.android.material.floatingactionbutton.FloatingActionButton
  61. android:id="@+id/reversePhraseButton"
  62. android:layout_width="wrap_content"
  63. android:layout_height="wrap_content"
  64. android:layout_marginEnd="16dp"
  65. android:clickable="true"
  66. android:contentDescription="@string/reverse_phrase"
  67. android:src="@android:drawable/ic_media_rew"
  68. app:fabSize="mini"
  69. app:layout_constraintEnd_toStartOf="@+id/reverseMeasureButton"
  70. app:layout_constraintTop_toTopOf="@+id/reverseMeasureButton"
  71. tools:layout_conversion_absoluteHeight="56dp"
  72. tools:layout_conversion_absoluteWidth="56dp" />
  73.  
  74. <com.google.android.material.floatingactionbutton.FloatingActionButton
  75. android:id="@+id/advanceMeasureButton"
  76. android:layout_width="wrap_content"
  77. android:layout_height="wrap_content"
  78. android:layout_marginStart="16dp"
  79. android:clickable="true"
  80. android:contentDescription="@string/advance_measure"
  81. android:src="@android:drawable/ic_media_next"
  82. app:fabSize="mini"
  83. app:layout_constraintStart_toEndOf="@+id/playButton"
  84. app:layout_constraintTop_toTopOf="@+id/reverseMeasureButton"
  85. tools:layout_conversion_absoluteHeight="56dp"
  86. tools:layout_conversion_absoluteWidth="56dp" />
  87.  
  88. <com.google.android.material.floatingactionbutton.FloatingActionButton
  89. android:id="@+id/advancePhraseButton"
  90. android:layout_width="wrap_content"
  91. android:layout_height="wrap_content"
  92. android:layout_marginStart="16dp"
  93. android:clickable="true"
  94. android:contentDescription="@string/advance_phrase"
  95. android:src="@android:drawable/ic_media_ff"
  96. app:fabSize="mini"
  97. app:layout_constraintStart_toEndOf="@+id/advanceMeasureButton"
  98. app:layout_constraintTop_toTopOf="@+id/reverseMeasureButton"
  99. tools:layout_conversion_absoluteHeight="56dp"
  100. tools:layout_conversion_absoluteWidth="56dp" />
  101.  
  102. <TextView
  103. android:id="@+id/tempoText"
  104. android:layout_width="wrap_content"
  105. android:layout_height="wrap_content"
  106. android:layout_marginTop="32dp"
  107. android:text="@string/placeholder"
  108. app:layout_constraintEnd_toEndOf="parent"
  109. app:layout_constraintStart_toStartOf="parent"
  110. app:layout_constraintTop_toBottomOf="@+id/masterVolumeSlider"
  111. tools:layout_conversion_absoluteHeight="19dp"
  112. tools:layout_conversion_absoluteWidth="112dp" />
  113.  
  114. <SeekBar
  115. android:id="@+id/tempoSlider"
  116. android:layout_width="0dp"
  117. android:layout_height="12dp"
  118. android:layout_marginStart="16dp"
  119. android:layout_marginTop="16dp"
  120. android:layout_marginEnd="16dp"
  121. app:layout_constraintEnd_toEndOf="parent"
  122. app:layout_constraintStart_toStartOf="parent"
  123. app:layout_constraintTop_toBottomOf="@+id/tempoText"
  124. tools:layout_conversion_absoluteHeight="18dp"
  125. tools:layout_conversion_absoluteWidth="379dp" />
  126.  
  127. <TextView
  128. android:id="@+id/masterVolumeText"
  129. android:layout_width="wrap_content"
  130. android:layout_height="wrap_content"
  131. android:layout_marginTop="32dp"
  132. android:text="@string/placeholder"
  133. app:layout_constraintEnd_toEndOf="parent"
  134. app:layout_constraintStart_toStartOf="parent"
  135. app:layout_constraintTop_toBottomOf="@+id/playButton"
  136. tools:layout_conversion_absoluteHeight="19dp"
  137. tools:layout_conversion_absoluteWidth="112dp" />
  138.  
  139. <SeekBar
  140. android:id="@+id/masterVolumeSlider"
  141. android:layout_width="0dp"
  142. android:layout_height="wrap_content"
  143. android:layout_marginStart="16dp"
  144. android:layout_marginTop="16dp"
  145. android:layout_marginEnd="16dp"
  146. app:layout_constraintEnd_toEndOf="parent"
  147. app:layout_constraintStart_toStartOf="parent"
  148. app:layout_constraintTop_toBottomOf="@+id/masterVolumeText"
  149. tools:layout_conversion_absoluteHeight="18dp"
  150. tools:layout_conversion_absoluteWidth="379dp" />
  151.  
  152. <TableLayout
  153. android:id="@+id/phraseTable"
  154. android:layout_width="0dp"
  155. android:layout_height="wrap_content"
  156. android:layout_marginStart="16dp"
  157. android:layout_marginTop="32dp"
  158. android:layout_marginEnd="16dp"
  159. app:layout_constraintEnd_toEndOf="parent"
  160. app:layout_constraintStart_toStartOf="parent"
  161. app:layout_constraintTop_toBottomOf="@+id/beatIndicator"
  162. tools:layout_conversion_absoluteHeight="0dp"
  163. tools:layout_conversion_absoluteWidth="411dp">
  164.  
  165. <TableRow
  166. android:id="@+id/phraseDisplay"
  167. android:layout_width="match_parent"
  168. android:layout_height="match_parent">
  169.  
  170. </TableRow>
  171. </TableLayout>
  172.  
  173. <androidx.cardview.widget.CardView
  174. android:id="@+id/nextChordCard"
  175. android:layout_width="wrap_content"
  176. android:layout_height="wrap_content"
  177. android:layout_marginTop="32dp"
  178. android:padding="20dp"
  179. app:cardCornerRadius="10dp"
  180. app:layout_constraintEnd_toEndOf="parent"
  181. app:layout_constraintStart_toStartOf="parent"
  182. app:layout_constraintTop_toBottomOf="@+id/phraseTable"
  183. tools:layout_conversion_absoluteHeight="27dp"
  184. tools:layout_conversion_absoluteWidth="258dp">
  185.  
  186. <TextView
  187. android:id="@+id/nextChordText"
  188. android:layout_width="wrap_content"
  189. android:layout_height="wrap_content"
  190. android:layout_margin="10dp"
  191. android:text="@string/unknown_chord"
  192. android:textSize="20sp"
  193. tools:layout_conversion_absoluteHeight="27dp"
  194. tools:layout_conversion_absoluteWidth="258dp" />
  195. </androidx.cardview.widget.CardView>
  196.  
  197. </androidx.constraintlayout.widget.ConstraintLayout>