--- a/res/values-en/arrays.xml Fri Sep 25 20:20:30 2009 +0200
+++ b/res/values-en/arrays.xml Fri Sep 25 22:14:53 2009 +0200
@@ -5,4 +5,12 @@
<item>SOCKS4</item>
<item>SOCKS5</item>
</string-array>
+ <string-array name="status_types">
+ <item name="AvailableForChat">Available for chat</item>
+ <item name="Available">Available</item>
+ <item name="Busy">Busy</item>
+ <item name="Away">Away</item>
+ <item name="Unavailable">Unavailable</item>
+ <item name="Disconnected">Disconnected</item>
+ </string-array>
</resources>
--- a/res/values-fr/arrays.xml Fri Sep 25 20:20:30 2009 +0200
+++ b/res/values-fr/arrays.xml Fri Sep 25 22:14:53 2009 +0200
@@ -5,4 +5,12 @@
<item>SOCKS4</item>
<item>SOCKS5</item>
</string-array>
+ <string-array name="status_types">
+ <item>Available for chat</item>
+ <item>Available</item>
+ <item>Busy</item>
+ <item>Away</item>
+ <item>Unavailable</item>
+ <item>Disconnected</item>
+ </string-array>
</resources>
--- a/src/com/beem/project/beem/ui/ChangeStatus.java Fri Sep 25 20:20:30 2009 +0200
+++ b/src/com/beem/project/beem/ui/ChangeStatus.java Fri Sep 25 22:14:53 2009 +0200
@@ -26,47 +26,69 @@
import com.beem.project.beem.utils.BeemBroadcastReceiver;
import com.beem.project.beem.utils.Status;
+/**
+ * This Activity is used to change the status.
+ * @author nikita
+ */
public class ChangeStatus extends Activity {
- private TextView mStatusText;
- private Toast mToast;
- private Button mOk;
- private Button mClear;
- private Spinner mSpinner;
- private static final String[] STATUS = { "Available for chat", "Available", "Busy", "Away", "Unavailable",
- "Disconnected" };
+ private static final Intent SERVICE_INTENT = new Intent();
+ static {
+ SERVICE_INTENT.setComponent(new ComponentName("com.beem.project.beem", "com.beem.project.beem.BeemService"));
+ }
private static final int DISCONNECTED_IDX = 5;
private static final int AVAILABLE_FOR_CHAT_IDX = 0;
private static final int AVAILABLE_IDX = 1;
private static final int BUSY_IDX = 2;
private static final int AWAY_IDX = 3;
private static final int UNAVAILABLE_IDX = 4;
-
+ private TextView mStatusText;
+ private Toast mToast;
+ private Button mOk;
+ private Button mClear;
+ private Spinner mSpinner;
+ private String[] mStatus;
+
private SharedPreferences mSettings;
- private ArrayAdapter<String> mAdapter;
- private IXmppFacade mXmppFacade = null;
+ private ArrayAdapter<CharSequence> mAdapter;
+ private IXmppFacade mXmppFacade;
private final ServiceConnection mServConn = new BeemServiceConnection();
- private final OnClickListener mOnClickOk = new MyOnClickListener();
+ private final OnClickListener mOnClickOk = new MyOnClickListener();
private BroadcastReceiver mReceiver;
- private static final Intent SERVICE_INTENT = new Intent();
- static {
- SERVICE_INTENT.setComponent(new ComponentName("com.beem.project.beem", "com.beem.project.beem.BeemService"));
+ /**
+ * constructor.
+ */
+ public ChangeStatus() {
}
+ /**
+ * Return the status index from status the settings.
+ * @return the status index from status the settings.
+ */
private int getPreferenceStatusIndex() {
return mSettings.getInt(getString(R.string.PreferenceStatus), 0);
}
+ /**
+ * Return the status text from status the settings.
+ * @param id status text id.
+ * @return the status text from status the settings.
+ */
private String getPreferenceString(int id) {
return mSettings.getString(getString(id), "");
}
+ /**
+ * convert status text to.
+ * @param item
+ * @return
+ */
private int getStatusForService(String item) {
int res = Status.CONTACT_STATUS_AVAILABLE;
- for (int i = 0; i < ChangeStatus.STATUS.length; i++) {
- String str = ChangeStatus.STATUS[i];
+ for (int i = 0; i < mStatus.length; i++) {
+ String str = mStatus[i];
if (str.equals(item)) {
switch (i) {
case ChangeStatus.DISCONNECTED_IDX:
@@ -83,7 +105,7 @@
return Status.CONTACT_STATUS_UNAVAILABLE;
default:
res = Status.CONTACT_STATUS_AVAILABLE;
- break;
+ break;
}
}
}
@@ -106,12 +128,14 @@
mSettings = getSharedPreferences(getString(R.string.settings_filename), MODE_PRIVATE);
mSpinner = (Spinner) findViewById(R.id.ChangeStatusSpinner);
- mAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, STATUS);
+ mAdapter = ArrayAdapter.createFromResource(this, R.array.status_types, android.R.layout.simple_spinner_item);
mAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
mSpinner.setAdapter(mAdapter);
mToast = Toast.makeText(this, R.string.ChangeStatusOk, Toast.LENGTH_LONG);
mReceiver = new BeemBroadcastReceiver();
- showSettings();
+ mStatusText.setText(getPreferenceString(R.string.PreferenceStatusText));
+ mSpinner.setSelection(getPreferenceStatusIndex());
+ mStatus = getResources().getStringArray(R.array.status_types);
}
/**
@@ -132,7 +156,7 @@
bindService(new Intent(this, BeemService.class), mServConn, BIND_AUTO_CREATE);
this.registerReceiver(mReceiver, new IntentFilter(XmppConnectionAdapter.BEEM_CONNECTION_CLOSED));
}
-
+
/**
* {@inheritDoc}
*/
@@ -142,11 +166,6 @@
this.unregisterReceiver(mReceiver);
}
- private void showSettings() {
- mStatusText.setText(getPreferenceString(R.string.PreferenceStatusText));
- mSpinner.setSelection(getPreferenceStatusIndex());
- }
-
private class BeemServiceConnection implements ServiceConnection {
@Override
@@ -192,11 +211,11 @@
}
}
private boolean statusHasChanged() {
- return (mSettings.getInt(getString(R.string.PreferenceStatus), 0) != mSpinner.getSelectedItemPosition());
+ return mSettings.getInt(getString(R.string.PreferenceStatus), 0) != mSpinner.getSelectedItemPosition();
}
private boolean textHasChanged() {
- return (!mStatusText.getText().toString().equals(getPreferenceString(R.string.PreferenceStatusText)));
+ return !mStatusText.getText().toString().equals(getPreferenceString(R.string.PreferenceStatusText));
}
}
}
--- a/src/com/beem/project/beem/ui/EditSettings.java Fri Sep 25 20:20:30 2009 +0200
+++ b/src/com/beem/project/beem/ui/EditSettings.java Fri Sep 25 22:14:53 2009 +0200
@@ -547,7 +547,7 @@
Log.i(getString(R.string.edit_settings_tag), LOG_MSG_SETTINGS_SAVED);
}
}
-
+
private class BeemBroadcastReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
--- a/src/com/beem/project/beem/utils/BeemBroadcastReceiver.java Fri Sep 25 20:20:30 2009 +0200
+++ b/src/com/beem/project/beem/utils/BeemBroadcastReceiver.java Fri Sep 25 22:14:53 2009 +0200
@@ -9,10 +9,16 @@
import android.widget.Toast;
/**
+ * Manage broadcast disconnect intent.
* @author nikita
- *
*/
public class BeemBroadcastReceiver extends BroadcastReceiver {
+
+ /**
+ * constructor.
+ */
+ public BeemBroadcastReceiver(){
+ }
/**
* {@inheritDoc}