author | Da Risk <darisk972@gmail.com> |
Thu, 23 Apr 2009 22:32:20 +0200 | |
changeset 163 | 52e96a8a743d |
parent 145 | 70b67bdac4fc |
child 164 | ff0f63e92986 |
permissions | -rw-r--r-- |
88 | 1 |
package com.beem.project.beem.ui; |
2 |
||
3 |
import android.app.Activity; |
|
114 | 4 |
import android.content.Context; |
88 | 5 |
import android.content.SharedPreferences; |
6 |
import android.os.Bundle; |
|
114 | 7 |
import android.util.Log; |
88 | 8 |
import android.view.View; |
9 |
import android.view.View.OnClickListener; |
|
114 | 10 |
import android.widget.AdapterView; |
11 |
import android.widget.ArrayAdapter; |
|
88 | 12 |
import android.widget.Button; |
13 |
import android.widget.EditText; |
|
114 | 14 |
import android.widget.LinearLayout; |
15 |
import android.widget.Spinner; |
|
16 |
import android.widget.TextView; |
|
17 |
import android.widget.AdapterView.OnItemSelectedListener; |
|
88 | 18 |
|
19 |
import com.beem.project.beem.R; |
|
20 |
||
21 |
public class ContactListSettings extends Activity { |
|
22 |
||
23 |
public static final int CHANGE = 1; |
|
114 | 24 |
private boolean mIsChanged = false; |
88 | 25 |
private SharedPreferences mSettings; |
114 | 26 |
private String[] mProxyTypeString; |
88 | 27 |
|
28 |
@Override |
|
29 |
protected void onCreate(Bundle savedInstanceState) { |
|
30 |
super.onCreate(savedInstanceState); |
|
31 |
setContentView(R.layout.contactlistsettings); |
|
114 | 32 |
|
33 |
String TypeNone = getString(R.string.PreferenceProxyTypeNone); |
|
34 |
String TypeHTTP = getString(R.string.PreferenceProxyTypeHttp); |
|
35 |
String TypeSocks4 = getString(R.string.PreferenceProxyTypeSocks4); |
|
36 |
String TypeSocks5 = getString(R.string.PreferenceProxyTypeSocks5); |
|
37 |
||
38 |
mProxyTypeString = new String[] { TypeNone, TypeHTTP, TypeSocks4, TypeSocks5 }; |
|
39 |
mSettings = getSharedPreferences(getString(R.string.PreferenceFileName), MODE_PRIVATE); |
|
40 |
||
41 |
Spinner sp = (Spinner) findViewById(R.id.proxy_type); |
|
42 |
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, |
|
43 |
mProxyTypeString); |
|
44 |
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); |
|
45 |
sp.setAdapter(adapter); |
|
46 |
for (int i = 0; i < mProxyTypeString.length; ++i) |
|
47 |
if (mProxyTypeString[i].equals(getPreferenceString(R.string.PreferenceProxyType))) |
|
48 |
sp.setSelection(i); |
|
49 |
sp.setOnItemSelectedListener(mProxyType); |
|
50 |
||
88 | 51 |
showSettings(); |
52 |
Button ok = (Button) findViewById(R.id.ok); |
|
53 |
ok.setOnClickListener(mOkListener); |
|
145 | 54 |
|
55 |
Button reco = (Button) findViewById(R.id.reconnect); |
|
56 |
reco.setOnClickListener(new OnClickListener () { |
|
57 |
||
58 |
@Override |
|
59 |
public void onClick(View v) { |
|
60 |
setResult(RESULT_OK); |
|
61 |
finish(); |
|
62 |
} |
|
63 |
||
64 |
}); |
|
88 | 65 |
} |
66 |
||
114 | 67 |
private OnItemSelectedListener mProxyType = new OnItemSelectedListener() { |
68 |
||
69 |
@Override |
|
70 |
public void onItemSelected(AdapterView<?> parent, View arg1, int arg2, long arg3) { |
|
71 |
String value = parent.getSelectedItem().toString(); |
|
72 |
LinearLayout ll = (LinearLayout) findViewById(R.id.proxy_layout); |
|
73 |
SharedPreferences.Editor editor = mSettings.edit(); |
|
74 |
||
75 |
if (value.equals(getString(R.string.PreferenceProxyTypeNone))) { |
|
76 |
ll.setVisibility(LinearLayout.INVISIBLE); |
|
77 |
editor.putBoolean(getString(R.string.PreferenceUseProxy), false); |
|
78 |
} else { |
|
79 |
ll.setVisibility(LinearLayout.VISIBLE); |
|
80 |
editor.putBoolean(getString(R.string.PreferenceUseProxy), true); |
|
81 |
} |
|
82 |
if (!value.equals(getPreferenceString(R.string.PreferenceProxyType))) { |
|
83 |
editor.putString(getString(R.string.PreferenceProxyType), value); |
|
84 |
mIsChanged = true; |
|
85 |
} |
|
115 | 86 |
editor.commit(); |
114 | 87 |
} |
88 |
||
89 |
@Override |
|
90 |
public void onNothingSelected(AdapterView<?> arg0) { |
|
91 |
} |
|
92 |
||
93 |
}; |
|
94 |
||
88 | 95 |
private OnClickListener mOkListener = new OnClickListener() { |
96 |
public void onClick(View v) { |
|
97 |
SharedPreferences.Editor editor = mSettings.edit(); |
|
116
dded6cd76f8c
Changement de statuts ok sauvée dans les sharedpreferences
Philippe Lago <lago_p@epitech.net>
parents:
115
diff
changeset
|
98 |
|
88 | 99 |
if (isChanged(R.id.host, R.string.PreferenceHostKey)) { |
114 | 100 |
editor.putString(getString(R.string.PreferenceHostKey), getWidgetText(R.id.host)); |
101 |
mIsChanged = true; |
|
88 | 102 |
} |
163
52e96a8a743d
correction d'un bug de status. Penser a decommenter le code dans ContactList
Da Risk <darisk972@gmail.com>
parents:
145
diff
changeset
|
103 |
if (Integer.parseInt(getWidgetText(R.id.port)) != mSettings.getInt(getString(R.string.PreferencePortKey), 5222) ) { |
52e96a8a743d
correction d'un bug de status. Penser a decommenter le code dans ContactList
Da Risk <darisk972@gmail.com>
parents:
145
diff
changeset
|
104 |
editor.putInt(getString(R.string.PreferencePortKey), Integer.parseInt(getWidgetText(R.id.port))); |
114 | 105 |
mIsChanged = true; |
88 | 106 |
} |
107 |
if (isChanged(R.id.userid, R.string.PreferenceLoginKey)) { |
|
114 | 108 |
editor.putString(getString(R.string.PreferenceLoginKey), getWidgetText(R.id.userid)); |
109 |
mIsChanged = true; |
|
88 | 110 |
} |
111 |
if (isChanged(R.id.password, R.string.PreferencePasswordKey)) { |
|
114 | 112 |
editor.putString(getString(R.string.PreferencePasswordKey), getWidgetText(R.id.password)); |
113 |
mIsChanged = true; |
|
88 | 114 |
} |
115 |
||
114 | 116 |
if (isChanged(R.id.proxy_host, R.string.PreferenceProxyHost)) { |
117 |
editor.putString(getString(R.string.PreferenceProxyHost), getWidgetText(R.id.proxy_host)); |
|
118 |
mIsChanged = true; |
|
119 |
} |
|
115 | 120 |
if (Integer.parseInt(getWidgetText(R.id.proxy_port)) != mSettings.getInt(getString(R.string.PreferenceProxyPort), 1080) ) { |
121 |
editor.putInt(getString(R.string.PreferenceProxyPort), Integer.parseInt(getWidgetText(R.id.proxy_port))); |
|
114 | 122 |
mIsChanged = true; |
123 |
} |
|
124 |
if (isChanged(R.id.proxy_login, R.string.PreferenceProxyUser)) { |
|
125 |
editor.putString(getString(R.string.PreferenceProxyUser), getWidgetText(R.id.proxy_login)); |
|
126 |
mIsChanged = true; |
|
127 |
} |
|
128 |
if (isChanged(R.id.proxy_pwd, R.string.PreferenceProxyPassword)) { |
|
129 |
editor.putString(getString(R.string.PreferenceProxyPassword), getWidgetText(R.id.proxy_pwd)); |
|
130 |
mIsChanged = true; |
|
131 |
} |
|
132 |
||
133 |
if (mIsChanged == true) { |
|
88 | 134 |
editor.commit(); |
135 |
setResult(RESULT_OK); |
|
136 |
} else |
|
137 |
setResult(RESULT_CANCELED); |
|
138 |
finish(); |
|
139 |
} |
|
140 |
}; |
|
141 |
||
142 |
private boolean isChanged(int idEdit, int idPreference) { |
|
143 |
return (!getWidgetText(idEdit).equals(getPreferenceString(idPreference))); |
|
144 |
} |
|
145 |
||
146 |
private void showSettings() { |
|
147 |
EditText e = (EditText) findViewById(R.id.host); |
|
148 |
e.setText(getPreferenceString(R.string.PreferenceHostKey)); |
|
149 |
e = (EditText) findViewById(R.id.port); |
|
163
52e96a8a743d
correction d'un bug de status. Penser a decommenter le code dans ContactList
Da Risk <darisk972@gmail.com>
parents:
145
diff
changeset
|
150 |
e.setText(String.valueOf(mSettings.getInt(getString(R.string.PreferencePortKey), 1080))); |
88 | 151 |
e = (EditText) findViewById(R.id.userid); |
152 |
e.setText(getPreferenceString(R.string.PreferenceLoginKey)); |
|
153 |
e = (EditText) findViewById(R.id.password); |
|
154 |
e.setText(getPreferenceString(R.string.PreferencePasswordKey)); |
|
114 | 155 |
|
156 |
e = (EditText) findViewById(R.id.proxy_host); |
|
157 |
e.setText(getPreferenceString(R.string.PreferenceProxyHost)); |
|
158 |
e = (EditText) findViewById(R.id.proxy_port); |
|
115 | 159 |
e.setText(String.valueOf(mSettings.getInt(getString(R.string.PreferenceProxyPort), 1080))); |
114 | 160 |
e = (EditText) findViewById(R.id.proxy_login); |
161 |
e.setText(getPreferenceString(R.string.PreferenceProxyUser)); |
|
162 |
e = (EditText) findViewById(R.id.proxy_pwd); |
|
163 |
e.setText(getPreferenceString(R.string.PreferenceProxyPassword)); |
|
88 | 164 |
} |
165 |
||
166 |
private String getWidgetText(int id) { |
|
167 |
EditText widget = (EditText) this.findViewById(id); |
|
168 |
return widget.getText().toString(); |
|
169 |
} |
|
170 |
||
171 |
private String getPreferenceString(int id) { |
|
172 |
return mSettings.getString(getString(id), ""); |
|
173 |
} |
|
174 |
||
175 |
} |