project_files/Android-build/SDL-android-project/src/org/hedgewars/hedgeroid/netplay/PlayerList.java
--- a/project_files/Android-build/SDL-android-project/src/org/hedgewars/hedgeroid/netplay/PlayerList.java Sat Jul 21 14:56:52 2012 +0200
+++ b/project_files/Android-build/SDL-android-project/src/org/hedgewars/hedgeroid/netplay/PlayerList.java Mon Jul 23 00:17:06 2012 +0200
@@ -1,12 +1,28 @@
package org.hedgewars.hedgeroid.netplay;
-public class PlayerList extends ObservableLinkedHashMap<String, Player> {
+import java.util.Collections;
+import java.util.Map;
+import java.util.TreeMap;
+
+import android.database.DataSetObservable;
+
+public class PlayerList extends DataSetObservable {
private long nextId = 1;
+ private Map<String, Player> players = new TreeMap<String, Player>();
public void addPlayerWithNewId(String name) {
Player p = new Player(name, nextId++);
- put(name, p);
+ players.put(name, p);
+ notifyChanged();
}
- public interface Observer extends ObservableLinkedHashMap.Observer<String, Player> {}
+ public void removePlayer(String name) {
+ if(players.remove(name) != null) {
+ notifyChanged();
+ }
+ }
+
+ public Map<String, Player> getMap() {
+ return Collections.unmodifiableMap(players);
+ }
}