/******************************************************************************* * Software Name : RCS IMS Stack * * Copyright (C) 2010 France Telecom S.A. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. ******************************************************************************/ package com.orangelabs.rcs.settings; import android.os.Bundle; import android.preference.CheckBoxPreference; import android.preference.EditTextPreference; import android.preference.Preference; import android.preference.PreferenceActivity; import com.orangelabs.rcs.R; import com.orangelabs.rcs.provider.settings.RcsSettings; /** * Presence settings display * * @author jexa7410 */ public class PresenceSettingsDisplay extends PreferenceActivity implements Preference.OnPreferenceChangeListener { private EditTextPreference freetextEdit1; private EditTextPreference freetextEdit2; private EditTextPreference freetextEdit3; private EditTextPreference freetextEdit4; private CheckBoxPreference vibrateInvitation; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); addPreferencesFromResource(R.xml.rcs_settings_presence_preferences); setTitle(R.string.rcs_settings_title_presence_settings); freetextEdit1 = (EditTextPreference)findPreference("edit_freetext1"); freetextEdit1.setPersistent(false); freetextEdit1.setOnPreferenceChangeListener(this); String txt1 = RcsSettings.getInstance().getPredefinedFreetext1(); freetextEdit1.setText(txt1); freetextEdit1.setTitle(txt1); freetextEdit2 = (EditTextPreference)findPreference("edit_freetext2"); freetextEdit2.setPersistent(false); freetextEdit2.setOnPreferenceChangeListener(this); String txt2 = RcsSettings.getInstance().getPredefinedFreetext2(); freetextEdit2.setText(txt2); freetextEdit2.setTitle(txt2); freetextEdit3 = (EditTextPreference)findPreference("edit_freetext3"); freetextEdit3.setPersistent(false); freetextEdit3.setOnPreferenceChangeListener(this); String txt3 = RcsSettings.getInstance().getPredefinedFreetext3(); freetextEdit3.setText(txt3); freetextEdit3.setTitle(txt3); freetextEdit4 = (EditTextPreference)findPreference("edit_freetext4"); freetextEdit4.setPersistent(false); freetextEdit4.setOnPreferenceChangeListener(this); String txt4 = RcsSettings.getInstance().getPredefinedFreetext4(); freetextEdit4.setText(txt4); freetextEdit4.setTitle(txt4); vibrateInvitation = (CheckBoxPreference)findPreference("presence_invitation_vibration"); vibrateInvitation.setPersistent(false); vibrateInvitation.setOnPreferenceChangeListener(this); vibrateInvitation.setChecked(RcsSettings.getInstance().isPhoneVibrateForPresenceInvitation()); } public boolean onPreferenceChange(Preference preference, Object objValue) { if (preference.getKey().equals("edit_freetext1")) { String txt = (String)objValue; RcsSettings.getInstance().setPredefinedFreetext1(txt); freetextEdit1.setTitle(txt); } else if (preference.getKey().equals("edit_freetext2")) { String txt = (String)objValue; RcsSettings.getInstance().setPredefinedFreetext2(txt); freetextEdit2.setTitle(txt); } else if (preference.getKey().equals("edit_freetext3")) { String txt = (String)objValue; RcsSettings.getInstance().setPredefinedFreetext3(txt); freetextEdit3.setTitle(txt); } else if (preference.getKey().equals("edit_freetext4")) { String txt = (String)objValue; RcsSettings.getInstance().setPredefinedFreetext4(txt); freetextEdit4.setTitle(txt); } else if (preference.getKey().equals("presence_invitation_vibration")) { Boolean state = (Boolean)objValue; RcsSettings.getInstance().setPhoneVibrateForPresenceInvitation(state.booleanValue()); } return true; } }