mirror of
https://github.com/cwinfo/envayasms.git
synced 2025-04-18 22:07:30 +00:00
105 lines
3.2 KiB
Java
Executable File
105 lines
3.2 KiB
Java
Executable File
package org.envaya.kalsms;
|
|
|
|
import android.content.Intent;
|
|
import android.content.SharedPreferences;
|
|
import android.content.SharedPreferences.OnSharedPreferenceChangeListener;
|
|
import android.os.Bundle;
|
|
import android.preference.EditTextPreference;
|
|
import android.preference.ListPreference;
|
|
import android.preference.Preference;
|
|
import android.preference.PreferenceActivity;
|
|
import android.preference.PreferenceScreen;
|
|
import android.view.Menu;
|
|
|
|
public class Prefs extends PreferenceActivity implements OnSharedPreferenceChangeListener {
|
|
|
|
@Override
|
|
public void onCreate(Bundle savedInstanceState) {
|
|
super.onCreate(savedInstanceState);
|
|
addPreferencesFromResource(R.xml.prefs);
|
|
|
|
PreferenceScreen screen = this.getPreferenceScreen();
|
|
int numPrefs = screen.getPreferenceCount();
|
|
|
|
for(int i=0; i < numPrefs;i++)
|
|
{
|
|
updatePrefSummary(screen.getPreference(i));
|
|
}
|
|
}
|
|
|
|
@Override
|
|
protected void onResume(){
|
|
super.onResume();
|
|
// Set up a listener whenever a key changes
|
|
getPreferenceScreen().getSharedPreferences().registerOnSharedPreferenceChangeListener(this);
|
|
}
|
|
|
|
@Override
|
|
protected void onPause() {
|
|
super.onPause();
|
|
// Unregister the listener whenever a key changes
|
|
getPreferenceScreen().getSharedPreferences().unregisterOnSharedPreferenceChangeListener(this);
|
|
}
|
|
|
|
public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) {
|
|
|
|
App app = App.getInstance(this.getApplication());
|
|
if (key.equals("outgoing_interval"))
|
|
{
|
|
app.setOutgoingMessageAlarm();
|
|
}
|
|
else if (key.equals("server_url"))
|
|
{
|
|
app.log("Server URL changed to: " + app.getDisplayString(app.getServerUrl()));
|
|
}
|
|
else if (key.equals("phone_number"))
|
|
{
|
|
app.log("Phone number changed to: " + app.getDisplayString(app.getPhoneNumber()));
|
|
}
|
|
else if (key.equals("password"))
|
|
{
|
|
app.log("Password changed");
|
|
}
|
|
|
|
updatePrefSummary(findPreference(key));
|
|
}
|
|
|
|
private void updatePrefSummary(Preference p)
|
|
{
|
|
if (p instanceof ListPreference) {
|
|
p.setSummary(((ListPreference)p).getEntry());
|
|
}
|
|
else if (p instanceof EditTextPreference) {
|
|
|
|
EditTextPreference textPref = (EditTextPreference)p;
|
|
String text = textPref.getText();
|
|
if (text.equals(""))
|
|
{
|
|
p.setSummary("(not set)");
|
|
}
|
|
else if (p.getKey().equals("password"))
|
|
{
|
|
p.setSummary("********");
|
|
}
|
|
else
|
|
{
|
|
p.setSummary(text);
|
|
}
|
|
}
|
|
}
|
|
|
|
// first time the Menu key is pressed
|
|
@Override
|
|
public boolean onCreateOptionsMenu(Menu menu) {
|
|
startActivity(new Intent(this, Prefs.class));
|
|
return (true);
|
|
}
|
|
|
|
// any other time the Menu key is pressed
|
|
@Override
|
|
public boolean onPrepareOptionsMenu(Menu menu) {
|
|
startActivity(new Intent(this, Prefs.class));
|
|
return (true);
|
|
}
|
|
}
|