Ajout d'une petite gestion d'erreur
authorJean-Manuel Da Silva <dasilvj at gmail dot com>
Fri, 13 Nov 2009 03:26:15 +0100
changeset 509 18217d0805d7
parent 508 7d8da3df2907
child 510 40b6fc1be0ef
Ajout d'une petite gestion d'erreur
res/values-fr/strings.xml
res/values/strings.xml
src/com/beem/project/beem/ui/Chat.java
--- a/res/values-fr/strings.xml	Fri Nov 13 02:56:45 2009 +0100
+++ b/res/values-fr/strings.xml	Fri Nov 13 03:26:15 2009 +0100
@@ -277,7 +277,9 @@
 	<string name="contact_status_msg_xa">Indisponible</string>
 	<string name="contact_status_msg_offline">Hors ligne</string>
 <string name="UpdateButton">Mettre à jour</string>
-<string name="chat_menu_contacts_list">Liste d'amis</string>
-<string name="chat_menu_change_chat">Changer de chat</string>
+<string name="chat_menu_contacts_list">Liste de contacts</string>
+<string name="chat_menu_change_chat">Changer de conversation</string>
 <string name="chat_dialog_change_chat_title">Conversations en cours</string>
+<string name="chat_menu_close_chat">Fermer cette conversation</string>
+<string name="chat_no_more_chats">Aucune conversation en cours</string>
 </resources>
--- a/res/values/strings.xml	Fri Nov 13 02:56:45 2009 +0100
+++ b/res/values/strings.xml	Fri Nov 13 03:26:15 2009 +0100
@@ -262,4 +262,6 @@
 <string name="chat_menu_contacts_list">Contacts list</string>
 <string name="chat_menu_change_chat">Switch chat</string>
 <string name="chat_dialog_change_chat_title">Opened chats</string>
+<string name="chat_menu_close_chat">Close this chat</string>
+<string name="chat_no_more_chats">No more active chats</string>
 </resources>
--- a/src/com/beem/project/beem/ui/Chat.java	Fri Nov 13 02:56:45 2009 +0100
+++ b/src/com/beem/project/beem/ui/Chat.java	Fri Nov 13 03:26:15 2009 +0100
@@ -246,11 +246,23 @@
 	    case R.id.chat_menu_change_chat:
 		try {
 		    final List<Contact> openedChats = mChatManager.getOpenedChatList();
-		    createChangeChatDialog(openedChats);
+		    
+		    if (openedChats.size() > 0)
+			createChangeChatDialog(openedChats);
+		    else
+			createNoMoreChatsDialog();
 		} catch (RemoteException e) {
 		    Log.e(TAG, e.getMessage());
 		}
 		return true;
+	    case R.id.chat_menu_close_chat:
+		try {
+		    mChatManager.destroyChat(mChat);
+		} catch (RemoteException e) {
+		    Log.e(TAG, e.getMessage());
+		}
+		this.finish();
+		return true;
 	    default:
 		return false;
 	}
@@ -284,6 +296,13 @@
 	AlertDialog changeChatDialog = builder.create();
 	changeChatDialog.show();
     }
+    
+    private void createNoMoreChatsDialog() {
+	AlertDialog.Builder builder = new AlertDialog.Builder(this);
+	builder.setMessage(getString(R.string.chat_no_more_chats));
+	AlertDialog noMoreChatsDialog = builder.create();
+	noMoreChatsDialog.show();
+    }
 
     /**
      * Change the displayed chat.