commit 9e22881459071119d9fe4fdec3de4d396a536240
parent 2ade437953b082928300c04b476853cf620aafdc
Author: gstraube <gstraube@users.noreply.github.com>
Date: Sat, 23 Feb 2019 10:06:23 +0100
Merge pull request #26 from Daveed9/master
Added the viola
Diffstat:
5 files changed, 65 insertions(+), 0 deletions(-)
diff --git a/app/src/main/java/com/github/cythara/TuningMapper.java b/app/src/main/java/com/github/cythara/TuningMapper.java
@@ -13,6 +13,7 @@ import com.github.cythara.tuning.OpenGGuitarTuning;
import com.github.cythara.tuning.UkuleleDTuning;
import com.github.cythara.tuning.UkuleleTuning;
import com.github.cythara.tuning.ViolinTuning;
+import com.github.cythara.tuning.ViolaTuning;
class TuningMapper {
@@ -27,6 +28,7 @@ class TuningMapper {
private static final int D_TUNING_POSITION = 8;
private static final int VIOLIN_TUNING_POSITION = 9;
private static final int CELLO_TUNING_POSITION = 10;
+ private static final int VIOLA_TUNING_POSITION = 11;
static Tuning getTuningFromPosition(int position) {
switch (position) {
@@ -52,6 +54,8 @@ class TuningMapper {
return new ViolinTuning();
case CELLO_TUNING_POSITION:
return new CelloTuning();
+ case VIOLA_TUNING_POSITION:
+ return new ViolaTuning();
default:
Log.w("com.github.cythara", "Unknown position for tuning dropdown list");
return new ChromaticTuning();
diff --git a/app/src/main/java/com/github/cythara/tuning/ViolaTuning.java b/app/src/main/java/com/github/cythara/tuning/ViolaTuning.java
@@ -0,0 +1,58 @@
+package com.github.cythara.tuning;
+
+import com.github.cythara.Note;
+import com.github.cythara.NoteName;
+import com.github.cythara.Tuning;
+
+import static com.github.cythara.NoteName.*;
+
+public class ViolaTuning implements Tuning {
+
+ @Override
+ public Note[] getNotes() {
+ return Pitch.values();
+ }
+
+ @Override
+ public Note findNote(String name) {
+ return Pitch.valueOf(name);
+ }
+
+ private enum Pitch implements Note {
+
+ C3(C, 3, 130.81f),
+ G3(G, 3, 196.00f),
+ D4(D, 4, 293.66f),
+ A4(A, 4, 440.00f);
+
+ private final String sign;
+ private final int octave;
+ private final float frequency;
+ private NoteName name;
+
+ Pitch(NoteName name, int octave, float frequency) {
+ this.name = name;
+ this.octave = octave;
+ this.sign = "";
+ this.frequency = frequency;
+ }
+
+ public NoteName getName() {
+ return name;
+ }
+
+ public float getFrequency() {
+ return frequency;
+ }
+
+ @Override
+ public int getOctave() {
+ return octave;
+ }
+
+ @Override
+ public String getSign() {
+ return sign;
+ }
+ }
+}
diff --git a/app/src/main/res/values-de-rDE/strings.xml b/app/src/main/res/values-de-rDE/strings.xml
@@ -25,6 +25,7 @@
<item>Ukulele (D tuning)</item>
<item>Geige (Standard)</item>
<item>Cello (Standard)</item>
+ <item>Viola (Standard)</item>
</string-array>
<string-array name="notations">
<item name="scientific">Wissenschaftlich</item>
diff --git a/app/src/main/res/values-pt-rBR/strings.xml b/app/src/main/res/values-pt-rBR/strings.xml
@@ -25,6 +25,7 @@
<item>Ukulele (D tuning)</item>
<item>Violino (padrão)</item>
<item>Cello (padrão)</item>
+ <item>Viola (padrão)</item>
</string-array>
<string-array name="notations">
<item name="scientific">Notação científica</item>
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
@@ -27,6 +27,7 @@
<item>Ukulele (D tuning)</item>
<item>Violin (standard)</item>
<item>Cello (standard)</item>
+ <item>Viola (standard)</item>
</string-array>
<string-array name="notations">
<item name="scientific">Scientific pitch notation</item>