Subversion Repositories Code-Repo

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
103 Kevin 1
package IEEERobotics.IOIOAI.VT;
2
 
3
import android.content.SharedPreferences;
4
import android.content.SharedPreferences.OnSharedPreferenceChangeListener;
5
import android.os.Bundle;
6
import android.preference.CheckBoxPreference;
7
import android.preference.EditTextPreference;
8
import android.preference.PreferenceManager;
9
import android.text.InputType;
10
 
11
public class GlobalPreferenceActivity extends android.preference.PreferenceActivity implements OnSharedPreferenceChangeListener {
12
 
13
	private CheckBoxPreference _pref_startDebug;
14
	private EditTextPreference _pref_graphLength;
15
	private EditTextPreference _pref_updateInterval;
16
 
17
	private SharedPreferences sharedPrefs;
18
 
19
	@Override
20
	public void onCreate(Bundle savedInstanceState) {    
21
	    super.onCreate(savedInstanceState);       
22
	    addPreferencesFromResource(R.xml.settings);
23
 
24
	    _pref_startDebug = (CheckBoxPreference) findPreference("pref_StartInDebug");
25
	    _pref_graphLength = (EditTextPreference) findPreference("pref_GraphLength");
26
	    _pref_updateInterval = (EditTextPreference) findPreference("pref_UpdateInterval");
27
 
28
	    sharedPrefs = PreferenceManager.getDefaultSharedPreferences(this);
29
	}
30
 
31
	@Override
32
	public void onResume() {
33
		super.onResume();
34
 
35
		// Set the summary text to the current values when the preferences page is opened
36
		if (sharedPrefs.getBoolean("pref_StartInDebug", true))
37
			_pref_startDebug.setSummary("Currently starting in Debug Mode");
38
		else
39
			_pref_startDebug.setSummary("Currently starting in AI Mode");
40
 
41
		_pref_graphLength.setSummary("Current Value: " + sharedPrefs.getString("pref_GraphLength", ""));
42
		_pref_graphLength.getEditText().setInputType(InputType.TYPE_CLASS_NUMBER);
43
 
44
		_pref_updateInterval.setSummary("Current Value: " + sharedPrefs.getString("pref_UpdateInterval", "") + "ms");
45
		_pref_updateInterval.getEditText().setInputType(InputType.TYPE_CLASS_NUMBER);
46
 
47
		getPreferenceScreen().getSharedPreferences().registerOnSharedPreferenceChangeListener(this);
48
	}
49
 
50
	@Override
51
	public void onPause() {
52
		super.onPause();
53
		getPreferenceScreen().getSharedPreferences().unregisterOnSharedPreferenceChangeListener(this);
54
	}
55
 
56
	@Override
57
	public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) {
58
		// Change the summary text when the value is changed
59
		if (key.compareTo("pref_StartInDebug") == 0) {
60
			if (sharedPrefs.getBoolean("pref_StartInDebug", true))
61
				_pref_startDebug.setSummary("Currently starting in Debug Mode");
62
			else
63
				_pref_startDebug.setSummary("Currently starting in AI Mode");
64
		} else if (key.compareTo("pref_GraphLength") == 0) {
65
			_pref_graphLength.setSummary("Current Value: " + sharedPrefs.getString("pref_GraphLength", "100"));
66
		} else if (key.compareTo("pref_UpdateInterval") == 0) {
67
			_pref_updateInterval.setSummary("Current Value: " + sharedPrefs.getString("pref_UpdateInterval", "100") + "ms");
68
		}
69
	}
70
}