diff options
| author | Lioncash <mathew1800@gmail.com> | 2013-08-12 19:41:23 -0400 |
|---|---|---|
| committer | Lioncash <mathew1800@gmail.com> | 2013-08-12 19:41:23 -0400 |
| commit | 3b272d81b45f47d3fb0aab8ff0a1736fb1788f1e (patch) | |
| tree | d865f83b810776c2e0bb2bfe8657b88d1eeb8241 /Source/Android/src | |
| parent | 00b034f991ffedd2fb30040dea715b2287563cc0 (diff) | |
[Android] Use a HashMap in PrefsFragment.java instead of two CharSequence arrays.
This way, we hold the [key|value] pairs together in one object and reduce overall code clutter.
Diffstat (limited to 'Source/Android/src')
| -rw-r--r-- | Source/Android/src/org/dolphinemu/dolphinemu/PrefsFragment.java | 45 |
1 files changed, 19 insertions, 26 deletions
diff --git a/Source/Android/src/org/dolphinemu/dolphinemu/PrefsFragment.java b/Source/Android/src/org/dolphinemu/dolphinemu/PrefsFragment.java index daf9aeb1c6..e16b2503c3 100644 --- a/Source/Android/src/org/dolphinemu/dolphinemu/PrefsFragment.java +++ b/Source/Android/src/org/dolphinemu/dolphinemu/PrefsFragment.java @@ -1,5 +1,7 @@ package org.dolphinemu.dolphinemu; +import java.util.HashMap; + import android.app.Activity; import android.os.Build; import android.os.Bundle; @@ -138,36 +140,28 @@ public class PrefsFragment extends PreferenceFragment { addPreferencesFromResource(R.layout.prefs); final ListPreference etp = new ListPreference(m_activity); - CharSequence[] _entries; - CharSequence[] _entryvalues; + final HashMap<CharSequence, CharSequence> entries = new HashMap<CharSequence, CharSequence>(); if (Build.CPU_ABI.contains("x86")) { - _entries = new CharSequence[] { - "Interpreter", - "JIT64 Recompiler", - "JITIL Recompiler", - }; - _entryvalues = new CharSequence[] {"0", "1", "2"}; + entries.put("Interpreter", "0"); + entries.put("JIT64 Recompiler", "1"); + entries.put("JITIL Recompiler", "2"); } else if (Build.CPU_ABI.contains("arm")) { - _entries = new CharSequence[] { - "Interpreter", - "JIT ARM Recompiler", - }; - _entryvalues = new CharSequence[] {"0", "3"}; + entries.put("Interpreter", "0"); + entries.put("JIT ARM Recompiler", "3"); } else { - _entries = new CharSequence[] { - "Interpreter", - }; - _entryvalues = new CharSequence[] {"0"}; + entries.put("Interpreter", "0"); } - - etp.setEntries(_entries); - etp.setEntryValues(_entryvalues); + + // Convert the key/value sections to arrays respectively so the list can be set. + // If Java had proper generics it wouldn't look this disgusting. + etp.setEntries(entries.keySet().toArray(new CharSequence[entries.size()])); + etp.setEntryValues(entries.values().toArray(new CharSequence[entries.size()])); etp.setKey("cpupref"); etp.setTitle("CPU Core"); etp.setSummary("Emulation core to use"); @@ -185,17 +179,16 @@ public class PrefsFragment extends PreferenceFragment { final ListPreference videobackend = new ListPreference(m_activity); - _entries = new CharSequence[] { - "Software Renderer", - }; - _entryvalues = new CharSequence[] {"Software Renderer"}; + // Add available graphics renderers to the hashmap to add to the list. + entries.clear(); + entries.put("Software Renderer", "Software Renderer"); // TODO: I think this is a bug? The value shouldn't be the same as the key? videobackend.setKey("gpupref"); videobackend.setTitle("Video Backend"); videobackend.setSummary("Video backend to use"); - videobackend.setEntries(_entries); - videobackend.setEntryValues(_entryvalues); + videobackend.setEntries(entries.keySet().toArray(new CharSequence[entries.size()])); + videobackend.setEntryValues(entries.values().toArray(new CharSequence[entries.size()])); mCategory.addPreference(videobackend); } |
