diff --git a/src/main/java/org/billthefarmer/editor/Editor.java b/src/main/java/org/billthefarmer/editor/Editor.java index 77f5fee2..e5f5002a 100644 --- a/src/main/java/org/billthefarmer/editor/Editor.java +++ b/src/main/java/org/billthefarmer/editor/Editor.java @@ -137,6 +137,7 @@ public class Editor extends Activity public final static String PREF_FILE = "pref_file"; public final static String PREF_HIGH = "pref_high"; + public final static String PREF_TYPEWRITER = "pref_typewriter"; public final static String PREF_PATHS = "pref_paths"; public final static String PREF_SAVE = "pref_save"; public final static String PREF_LAST = "pref_last"; @@ -418,6 +419,9 @@ public class Editor extends Activity private final static int SH_SYNTAX = 6; private final static int DEF_SYNTAX = 7; + // sounds + private final static int SOUND_KEY_DOWN = 1; + private Uri uri; private File file; private String path; @@ -439,6 +443,8 @@ public class Editor extends Activity private boolean highlight = false; + private boolean typewriter = false; + private boolean last = false; private boolean save = false; private boolean edit = false; @@ -457,6 +463,8 @@ public class Editor extends Activity private int syntax; + private SoundManager mSoundManager; + // onCreate @Override protected void onCreate(Bundle savedInstanceState) @@ -476,6 +484,7 @@ protected void onCreate(Bundle savedInstanceState) wrap = preferences.getBoolean(PREF_WRAP, false); suggest = preferences.getBoolean(PREF_SUGGEST, true); highlight = preferences.getBoolean(PREF_HIGH, false); + typewriter = preferences.getBoolean(PREF_TYPEWRITER, false); theme = preferences.getInt(PREF_THEME, LIGHT); size = preferences.getInt(PREF_SIZE, MEDIUM); @@ -615,6 +624,10 @@ else if (text != null) break; } + mSoundManager = new SoundManager(); + mSoundManager.initSounds(getBaseContext()); + mSoundManager.addSound(SOUND_KEY_DOWN, R.raw.typewriter); + setListeners(); } @@ -680,7 +693,11 @@ public void beforeTextChanged(CharSequence s, public void onTextChanged(CharSequence s, int start, int before, - int count) {} + int count) { + if (typewriter) { + mSoundManager.playSound(SOUND_KEY_DOWN); + } + } }); // onFocusChange @@ -828,6 +845,7 @@ public void onPause() editor.putBoolean(PREF_WRAP, wrap); editor.putBoolean(PREF_SUGGEST, suggest); editor.putBoolean(PREF_HIGH, highlight); + editor.putBoolean(PREF_TYPEWRITER, typewriter); editor.putInt(PREF_THEME, theme); editor.putInt(PREF_SIZE, size); @@ -909,6 +927,7 @@ public boolean onPrepareOptionsMenu(Menu menu) menu.findItem(R.id.wrap).setChecked(wrap); menu.findItem(R.id.suggest).setChecked(suggest); menu.findItem(R.id.highlight).setChecked(highlight); + menu.findItem(R.id.typewriter).setChecked(typewriter); switch (theme) { @@ -1086,6 +1105,9 @@ public boolean onOptionsItemSelected(MenuItem item) case R.id.highlight: highlightClicked(item); break; + case R.id.typewriter: + typewriterClicked(item); + break; case R.id.light: lightClicked(item); break; @@ -1919,6 +1941,13 @@ private void highlightClicked(MenuItem item) checkHighlight(); } + // highlightClicked + private void typewriterClicked(MenuItem item) + { + typewriter = !typewriter; + item.setChecked(typewriter); + } + // lightClicked private void lightClicked(MenuItem item) { diff --git a/src/main/java/org/billthefarmer/editor/SoundManager.java b/src/main/java/org/billthefarmer/editor/SoundManager.java new file mode 100644 index 00000000..70298e79 --- /dev/null +++ b/src/main/java/org/billthefarmer/editor/SoundManager.java @@ -0,0 +1,44 @@ +package org.billthefarmer.editor; + +import java.util.HashMap; + +import android.content.Context; +import android.media.AudioManager; +import android.media.SoundPool; + +public class SoundManager { + private SoundPool mSoundPool; + private HashMap mSoundPoolMap; + private AudioManager mAudioManager; + private Context mContext; + + + public SoundManager() + { + + } + + public void initSounds(Context theContext) { + mContext = theContext; + mSoundPool = new SoundPool(4, AudioManager.STREAM_MUSIC, 0); + mSoundPoolMap = new HashMap(); + mAudioManager = (AudioManager)mContext.getSystemService(Context.AUDIO_SERVICE); + } + + public void addSound(int Index,int SoundID) + { + mSoundPoolMap.put(1, mSoundPool.load(mContext, SoundID, 1)); + } + + public void playSound(int index) { + + int streamVolume = mAudioManager.getStreamVolume(AudioManager.STREAM_MUSIC); + mSoundPool.play(mSoundPoolMap.get(index), streamVolume, streamVolume, 1, 0, 1f); + } + + public void playLoopedSound(int index) { + + int streamVolume = mAudioManager.getStreamVolume(AudioManager.STREAM_MUSIC); + mSoundPool.play(mSoundPoolMap.get(index), streamVolume, streamVolume, 1, -1, 1f); + } +} diff --git a/src/main/res/menu/main.xml b/src/main/res/menu/main.xml index 656f01a9..bbe709a1 100644 --- a/src/main/res/menu/main.xml +++ b/src/main/res/menu/main.xml @@ -117,6 +117,12 @@ android:checked="false" android:showAsAction="never" android:title="@string/highlight" /> + تقسيم الأسطر الطويلة الاقتراحات تمييز بناء الجملة + Typewriter sound السمة مضيء مظلم diff --git a/src/main/res/values-be/strings.xml b/src/main/res/values-be/strings.xml index 7d519715..7e21b3e9 100644 --- a/src/main/res/values-be/strings.xml +++ b/src/main/res/values-be/strings.xml @@ -29,6 +29,7 @@ Перанос радкоў Варыянты слоў Вылучыць сінтаксіс + Typewriter sound Тэма Светлая Цёмная diff --git a/src/main/res/values-de/strings.xml b/src/main/res/values-de/strings.xml index dac718e4..7b617570 100644 --- a/src/main/res/values-de/strings.xml +++ b/src/main/res/values-de/strings.xml @@ -29,6 +29,7 @@ Zeilenumbruch Vorschläge Syntax hervorheben + Typewriter sound Thema Hell Dunkel diff --git a/src/main/res/values-el/strings.xml b/src/main/res/values-el/strings.xml index 12e95592..9e093911 100644 --- a/src/main/res/values-el/strings.xml +++ b/src/main/res/values-el/strings.xml @@ -29,6 +29,7 @@ Αναδίπλωση λέξεων Προτάσεις Επισήμανση σύνταξης + Typewriter sound Θέμα Φωτεινό Άσπρος diff --git a/src/main/res/values-es/strings.xml b/src/main/res/values-es/strings.xml index b3ad3a4a..6f0d055b 100644 --- a/src/main/res/values-es/strings.xml +++ b/src/main/res/values-es/strings.xml @@ -29,6 +29,7 @@ Salto de línea Recomendaciones Marcar la sintaxis + Sonido de máquina de escribir Tema Claro Oscuro diff --git a/src/main/res/values-eu/strings.xml b/src/main/res/values-eu/strings.xml index b7b4c287..d8b05924 100644 --- a/src/main/res/values-eu/strings.xml +++ b/src/main/res/values-eu/strings.xml @@ -29,6 +29,7 @@ Lerro-jausia Gomendioak Markatu sintaxia + Typewriter sound Gaia Argia Iluna diff --git a/src/main/res/values-fa/strings.xml b/src/main/res/values-fa/strings.xml index da7f6669..f56915ea 100644 --- a/src/main/res/values-fa/strings.xml +++ b/src/main/res/values-fa/strings.xml @@ -29,6 +29,7 @@ پیچیدن کلمات پیشنهادات برجسته کردن سینتکس + Typewriter sound شِما روشن تاریک diff --git a/src/main/res/values-fr/strings.xml b/src/main/res/values-fr/strings.xml index 8b024934..35fd7cf3 100644 --- a/src/main/res/values-fr/strings.xml +++ b/src/main/res/values-fr/strings.xml @@ -29,6 +29,7 @@ Retour à la ligne auto Suggestions Surligner la syntaxe + Typewriter sound Thème Clair Foncé diff --git a/src/main/res/values-hu/strings.xml b/src/main/res/values-hu/strings.xml index c1ea11cf..34f0398d 100644 --- a/src/main/res/values-hu/strings.xml +++ b/src/main/res/values-hu/strings.xml @@ -29,6 +29,7 @@ Szövegtördelés Javaslatok Szintaxiskiemelés + Typewriter sound Téma Világos Sötét diff --git a/src/main/res/values-is/strings.xml b/src/main/res/values-is/strings.xml index ffd675e8..79f0cc5b 100644 --- a/src/main/res/values-is/strings.xml +++ b/src/main/res/values-is/strings.xml @@ -29,6 +29,7 @@ Línuskrið orða Tillögur Hápunktur setningafræði + Typewriter sound Þema Ljóst Dökkt diff --git a/src/main/res/values-it/strings.xml b/src/main/res/values-it/strings.xml index 1589b11f..94810319 100644 --- a/src/main/res/values-it/strings.xml +++ b/src/main/res/values-it/strings.xml @@ -29,6 +29,7 @@ A capo automatico Suggerimenti Evidenzia sintassi + Typewriter sound Tema Chiaro Bianco diff --git a/src/main/res/values-ja/strings.xml b/src/main/res/values-ja/strings.xml index 3a437096..a6fa82f1 100755 --- a/src/main/res/values-ja/strings.xml +++ b/src/main/res/values-ja/strings.xml @@ -29,6 +29,7 @@ 画面端で折り返す 提案 シンタックスハイライト + Typewriter sound テーマ ライト ダーク diff --git a/src/main/res/values-ku-rIQ/strings.xml b/src/main/res/values-ku-rIQ/strings.xml index 1ee1bd57..cddabb75 100644 --- a/src/main/res/values-ku-rIQ/strings.xml +++ b/src/main/res/values-ku-rIQ/strings.xml @@ -29,6 +29,7 @@ پێچانەوەی ووشە پێشنیازەکان بەرچاوکردنی ڕستەنووسی + Typewriter sound ڕووکار کاڵ تۆخ diff --git a/src/main/res/values-lv/strings.xml b/src/main/res/values-lv/strings.xml index a61a7c23..570f17a7 100644 --- a/src/main/res/values-lv/strings.xml +++ b/src/main/res/values-lv/strings.xml @@ -29,6 +29,7 @@ Vārdu aplaušana Ieteikumi Izcelt sintaksi + Typewriter sound Motīvs Gaišs Tumšs diff --git a/src/main/res/values-nl/strings.xml b/src/main/res/values-nl/strings.xml index 15410b8e..34b116d8 100644 --- a/src/main/res/values-nl/strings.xml +++ b/src/main/res/values-nl/strings.xml @@ -29,6 +29,7 @@ Tekstomloop Suggesties Syntaxis markeren + Typewriter sound Thema Licht Donker diff --git a/src/main/res/values-pl/strings.xml b/src/main/res/values-pl/strings.xml index c5194179..57132e93 100644 --- a/src/main/res/values-pl/strings.xml +++ b/src/main/res/values-pl/strings.xml @@ -29,6 +29,7 @@ Zawijanie słów Sugestie Podświetl składnię + Typewriter sound Motyw Jasny Ciemny diff --git a/src/main/res/values-pt-rBR/strings.xml b/src/main/res/values-pt-rBR/strings.xml index 33360449..6595f82a 100644 --- a/src/main/res/values-pt-rBR/strings.xml +++ b/src/main/res/values-pt-rBR/strings.xml @@ -29,6 +29,7 @@ Quebra as linhas Sugestões Destacar a sintaxe + Typewriter sound Tema Claro Branco diff --git a/src/main/res/values-pt/strings.xml b/src/main/res/values-pt/strings.xml index d95ed5bb..7e72d8c3 100644 --- a/src/main/res/values-pt/strings.xml +++ b/src/main/res/values-pt/strings.xml @@ -29,6 +29,7 @@ Quebras de linha Mostrar sugestões Destacar sintaxe + Typewriter sound Tema Claro Escuro diff --git a/src/main/res/values-ru/strings.xml b/src/main/res/values-ru/strings.xml index 0dff0d8e..2f6c0a67 100644 --- a/src/main/res/values-ru/strings.xml +++ b/src/main/res/values-ru/strings.xml @@ -29,6 +29,7 @@ Перенос строк Варианты слов Выделить синтаксис + Typewriter sound Тема Светлая Тёмная diff --git a/src/main/res/values-tr/strings.xml b/src/main/res/values-tr/strings.xml index dbae965e..a44ad58d 100644 --- a/src/main/res/values-tr/strings.xml +++ b/src/main/res/values-tr/strings.xml @@ -29,6 +29,7 @@ Sözcük kaydırma Öneriler Sözdizimini vurgula + Typewriter sound Tema Açık Koyu diff --git a/src/main/res/values-uk/strings.xml b/src/main/res/values-uk/strings.xml index 9930f9d3..37f540da 100644 --- a/src/main/res/values-uk/strings.xml +++ b/src/main/res/values-uk/strings.xml @@ -29,6 +29,7 @@ Перенесення слів Пропозиції Підсвітка синтаксису + Typewriter sound Тема Світла Темна diff --git a/src/main/res/values-zh-rCN/strings.xml b/src/main/res/values-zh-rCN/strings.xml index b59aded0..cd969984 100644 --- a/src/main/res/values-zh-rCN/strings.xml +++ b/src/main/res/values-zh-rCN/strings.xml @@ -29,6 +29,7 @@ 自动换行 建议 突出显示语法 + Typewriter sound 主题 diff --git a/src/main/res/values-zh-rTW/strings.xml b/src/main/res/values-zh-rTW/strings.xml index ba887557..8b43ecf8 100644 --- a/src/main/res/values-zh-rTW/strings.xml +++ b/src/main/res/values-zh-rTW/strings.xml @@ -29,6 +29,7 @@ 文字換列 建議 突顯語法 + Typewriter sound 主題 亮色 暗色 diff --git a/src/main/res/values/strings.xml b/src/main/res/values/strings.xml index 9d540e02..8cf558d3 100644 --- a/src/main/res/values/strings.xml +++ b/src/main/res/values/strings.xml @@ -32,6 +32,7 @@ Word wrap Suggestions Highlight syntax + Typewriter sound Theme Light Dark